Друзья, нужна помощь! PHP+mySQL

Nicolaschess

Новичок
Доброго времени суток, уважаемые!
Не сплю ночами, перелопатил интернет...но ответа не могу найти. фиговенький из меня программер-да и вообще не программер
Суть:
Есть опросник, в котором за правильные ответы плюсуются и минусуются баллы,
к нему уже прикручено определение IP

<?php

require_once('config.php');

if (!isset($conid)) {

function dbconnect() {
$mysql=mysql_connect(DB_HOST, DB_USER, DB_PASS); //хост, логин, пароль
mysql_select_db(DB_NAME); //имя базы данных
return $mysql;
}

function dbquery ($sql) { return mysql_query($sql,get_conid()); }
function dbrows ($result) { return mysql_num_rows($result); }
function dbfree ($result) { mysql_free_result($result); }
function dbclose ($conid) { mysql_close(get_conid()); }

function dbfetcha ($result) {
if ($row=mysql_fetch_assoc ($result)) return $row;
else return false;
}

function dbfetch ($result){
if ($row=mysql_fetch_array($result)) return $row;
else return false;
}

function get_conid () {
static $conid=0;
if ($conid==0) {
$conid=dbconnect();
mysql_set_charset (DB_ENCODING,$conid);
}
return $conid;
}

get_conid ();
}

function get_ip () {
if( getenv('HTTP_X_FORWARDED_FOR') != '' ) {
$client_ip = ( !empty($_SERVER['REMOTE_ADDR']) ) ? $_SERVER['REMOTE_ADDR'] :
( ( !empty($_ENV['REMOTE_ADDR']) ) ? $_ENV['REMOTE_ADDR'] : $REMOTE_ADDR );
$entries = explode(',', getenv('HTTP_X_FORWARDED_FOR'));
reset($entries);
while (list(, $entry) = each($entries)) {
$entry = trim($entry);
if ( preg_match("/^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/", $entry, $ip_list) ) {
$private_ip = array('/^0\./', '/^127\.0\.0\.1/', '/^192\.168\..*/',
'/^172\.((1[6-9])|(2[0-9])|(3[0-1]))\..*/', '/^10\..*/', '/^224\..*/', '/^240\..*/');
$found_ip = preg_replace($private_ip, $client_ip, $ip_list[1]);
if ($client_ip != $found_ip) {
$client_ip = $found_ip;
break;
}
}
}
}
else {
$client_ip = ( !empty($_SERVER['REMOTE_ADDR']) ) ? $_SERVER['REMOTE_ADDR'] :
( ( !empty($_ENV['REMOTE_ADDR']) ) ? $_ENV['REMOTE_ADDR'] : $REMOTE_ADDR );
}
return $client_ip;
}
?>
--------------------------------------------------------------------------------------------------------------------------------------------------
Прикладываю файлик для примера минусации:

<?php
require_once 'functions2.php';
$balM = intval(strip_tags(trim($_POST['balM'])));
$mov = mysql_real_escape_string(strip_tags(trim($_POST['move'])));
$ip = get_ip();
$result = dbquery('select * from '.DB_TABLE.' where ip="'.$ip.'" limit 0,1');
if ($result and dbrows($result)) {
$note = dbfetcha($result);
$note['cnt'] -= $balM;
if ($note['mov']!=$mov) { //не минусовать повторно за неверные
$result = dbquery('update '.DB_TABLE.' set cnt = "'.$note['cnt'].'", mov = "'.$mov.'" where ip = "'.$ip.'"');
if (!$result) die ('Invalid query 1: ' . mysql_error());
}
}
else {
$result = dbquery('insert into '.DB_TABLE.' (ip, cnt) values ("'.$ip.'", "'.(0-$balM).'")');
if (!$result) die ('Invalid query 2: ' . mysql_error());
}
?>

файл конфиг прописан, к БД на phpmyadmin подрубился, вывод данных тоже сделал
то есть по сути, фиговина рабочая, спасибо просторам интернета


НО
Необходимо теперь прикрутить к этому всему уже готовую форму регистрации, то есть сама форма и база данных зарегистрированных уже есть, но необходимо чтобы результат их деяний(заработанные баллы) был в одной строке с их ником(ID или ФИО), которые также уже заносятся в базу


Я пытался вытащить инфу из сессии и записать вместе с $login , но вообще не пашет
Пытался связать таблицы через Связи в phpmyadmin, но увы, что то пошло не так

Есть предложения, прощу помощи! штука оч нужная, уверяю

ЗЫ: форма регистрации и сам сайтыч на wordpress
 

Jevgenij

Новичок
Всем добрый день а можете пожалуйста помочь
суть дела в том что к форме добавления доп поля в плагине на (costum atributes) cms ( Osclas )
пытаюсь прикрутить $locales

в Costum atrbutes плагине код добавления доп поля выглядит так и как его доделать не знаю помогите

Код:
        <div class='add_attribute'>          
        <h2 class='render-title sub_heading'><?php _e('Add Attribute', CA_PLUGIN_NAME); ?></h2>
        <form method='post' id='post' action='<?php echo osc_admin_base_url(true);?>'>
       
        /* это я добавил

      что здесь надо менять не знаю

                                                <?php $locales = osc_get_locales();
                                                    $car_type = ModelCars::newInstance()->getVehiclesType() ;
                                                    $data = array();
                                                    foreach ($car_type as $c) {
                                                        $data[$c['fk_c_locale_code']][] = array('pk_i_id' => $c['pk_i_id'], 's_name' => $c['s_name']);
                                                    }
                                                ?>

*/
                 <ul class="ui-tabs-nav">
                <li>
                <input type='hidden' name='page' value='plugins' />
                <input type='hidden' name='action' value='renderplugin' />
                <input type='hidden' name='file' value='<?php echo osc_plugin_folder(__FILE__); ?>conf.php' />
                <input type='hidden' name='plugin_action' value='add_field' />
                <input type='hidden' name='group_id' value='<?php echo $group_id; ?>' />
                <input class='text_input'id="text_input" type='text' name='field_label' value=''/>
                <input class='text_input' type='text' name='field_options' value='' />
                <span class='options_text'><?php _e('Separate options with commas (eg. a, b, c).', CA_PLUGIN_NAME); ?></span>
                </p>
                <p>
                    <select class='field_type' name='field_type'>
                        <option value='checkbox'><?php _e('Checkbox', CA_PLUGIN_NAME); ?></option>
                        <?php $selected = ($type == 'date') ? " selected='selected'" : ''; ?>                              
                        <option value='date'<?php echo $selected; ?>><?php _e('Date', CA_PLUGIN_NAME); ?></option>
                        <?php $selected = ($type == 'radio') ? " selected='selected'" : ''; ?>  
                        <option value='radio'<?php echo $selected; ?>><?php _e('Radio', CA_PLUGIN_NAME); ?></option>
                        <?php $selected = ($type == 'select') ? " selected='selected'" : ''; ?>  
                        <option value='select'<?php echo $selected; ?>><?php _e('Select', CA_PLUGIN_NAME); ?></option>
                        <?php $selected = ($type == 'text') ? " selected='selected'" : ''; ?>  
                        <option value='text'<?php echo $selected; ?>><?php _e('Text', CA_PLUGIN_NAME); ?></option>
                        <?php $selected = ($type == 'textarea') ? " selected='selected'" : ''; ?>  
                        <option value='textarea'<?php echo $selected; ?>><?php _e('Text Area', CA_PLUGIN_NAME); ?></option>                          
                    </select>                      
                </p>
                </li>
                </ul>

   /* это я добавил
               
            <?php } else { ?>
            <?php foreach($locales as $locale) {?>
*/
               <div id="filds_label">  
                <ul class="ui-tabs-nav">

   /* это я добавил

                <li><?php echo $locale['s_name']; ?>     
   */
 
                <input type='hidden' name='page' value='plugins' />
                <input type='hidden' name='action' value='renderplugin' />
                <input type='hidden' name='file' value='<?php echo osc_plugin_folder(__FILE__); ?>conf.php' />
                <input type='hidden' name='plugin_action' value='add_field' />
                <input type='hidden' name='group_id' value='<?php echo $group_id; ?>' />
                <input class='text_input'id="text_input" type='text' name='field_label' value='' />
                <p class='field_options'>
                <input class='text_input' type='text' name='field_options' value='' />
                 <span class='options_text'><?php _e('Separate options with commas (eg. a, b, c).', CA_PLUGIN_NAME); ?></span>
                </p>
                <p>
                    <select class='field_type' name='field_type'>
                        <option value='checkbox'><?php _e('Checkbox', CA_PLUGIN_NAME); ?></option>
                        <?php $selected = ($type == 'date') ? " selected='selected'" : ''; ?>                              
                        <option value='date'<?php echo $selected; ?>><?php _e('Date', CA_PLUGIN_NAME); ?></option>
                        <?php $selected = ($type == 'radio') ? " selected='selected'" : ''; ?>  
                        <option value='radio'<?php echo $selected; ?>><?php _e('Radio', CA_PLUGIN_NAME); ?></option>
                        <?php $selected = ($type == 'select') ? " selected='selected'" : ''; ?>  
                        <option value='select'<?php echo $selected; ?>><?php _e('Select', CA_PLUGIN_NAME); ?></option>
                        <?php $selected = ($type == 'text') ? " selected='selected'" : ''; ?>  
                        <option value='text'<?php echo $selected; ?>><?php _e('Text', CA_PLUGIN_NAME); ?></option>
                        <?php $selected = ($type == 'textarea') ? " selected='selected'" : ''; ?>  
                        <option value='textarea'<?php echo $selected; ?>><?php _e('Text Area', CA_PLUGIN_NAME); ?></option>                          
                    </select>                      
                </p>
                </li>
                </ul>
                </div>
               
                <?php } ?>
                <?php } ?>
               
               
                <p>
                    <label class='required'><input class='checkbox_input' type='checkbox' name='field_required' value='1' /><?php _e('Require', CA_PLUGIN_NAME); ?><br /></label>
                    <label><input class='checkbox_input' type='checkbox' name='field_search' value='1' checked='checked' /><?php _e('Search', CA_PLUGIN_NAME); ?><br /></label>
                    <label class='range'><input class='checkbox_input' type='checkbox' name='field_search_limits' value='1' /><?php _e('Search Limits', CA_PLUGIN_NAME); ?><br /></label>
                </p>
                <p><button class='btn btn-mini' type='submit'><?php _e('Create', CA_PLUGIN_NAME); ?></button></p>
            </form>
                   
           
</div>
нужно чтоб записи в базу данных отправлялись вот в таком виде

Код:
(70, 'us_US', NULL, 'checkbox', 'TEST3', '', 0, 0, 0, 1, 0, NULL),
(70, 'lt_LT', NULL, 'checkbox', 'test2', '', 0, 0, 0, 1, 0, NULL),
(70, 'lv_LV', 'TEST1', 'checkbox', 'test', '', 0, 0, 0, 1, 0, NULL),
(70, 'ru_RU', NULL, 'checkbox', 'тест', '', 0, 0, 0, 1, 0, NULL);

посмотрите на картинке обведено красным





вот сам плагин https://yadi.sk/d/4NYOPn1R3RVyke

помогите пожалуйста
 

Jevgenij

Новичок
вот сама база данных куда должно все отсылаться
Код:
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

--
-- База данных: `e`
--

-- --------------------------------------------------------

--
-- Структура таблицы `os_t_item_custom_attr_fields`
--

CREATE TABLE `os_t_item_custom_attr_fields` (
  `pk_i_id` int(10) UNSIGNED NOT NULL,
  `fk_c_locale_code` char(5) NOT NULL,
  `s_name` varchar(255) DEFAULT NULL,
  `s_type` varchar(10) DEFAULT NULL,
  `s_label` varchar(255) DEFAULT NULL,
  `s_options` mediumtext,
  `b_range` tinyint(1) DEFAULT NULL,
  `s_steps` int(10) UNSIGNED DEFAULT NULL,
  `b_required` tinyint(1) DEFAULT NULL,
  `b_search` tinyint(1) DEFAULT NULL,
  `b_search_limits` tinyint(1) DEFAULT NULL,
  `i_order` int(10) UNSIGNED DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Дамп данных таблицы `os_t_item_custom_attr_fields`
--

INSERT INTO `os_t_item_custom_attr_fields` (`pk_i_id`, `fk_c_locale_code`, `s_name`, `s_type`, `s_label`, `s_options`, `b_range`, `s_steps`, `b_required`, `b_search`, `b_search_limits`, `i_order`) VALUES
(8, '', NULL, 'select', 'LCD', 'AMOLED,Super AMOLED,IPS,LCD,LED,LTPS IPS,PLS LCD,TFT,', 0, 0, 0, 1, 0, 10);

--
-- Индексы сохранённых таблиц
--

--
-- Индексы таблицы `os_t_item_custom_attr_fields`
--
ALTER TABLE `os_t_item_custom_attr_fields`
  ADD PRIMARY KEY (`pk_i_id`,`fk_c_locale_code`),
  ADD KEY `fk_c_locale_code` (`fk_c_locale_code`);

--
-- AUTO_INCREMENT для сохранённых таблиц
--

--
-- AUTO_INCREMENT для таблицы `os_t_item_custom_attr_fields`
--
ALTER TABLE `os_t_item_custom_attr_fields`
  MODIFY `pk_i_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=73;COMMIT;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
 
Сверху