ФорумРазработкаБазы данных → Нужна срочно помощь.Готов платить.

Нужна срочно помощь.Готов платить.

  • Narkoz91

    Сообщения: 1 Репутация: N Группа: Кто попало

    Spritz 26 июня 2012 г. 21:58

    Есть база данных из фамилий,айди и столбца money так же есть массив чекбоксов.Нужно выделить чекбоксы и при нажатии на кнопку обновить money=money+100.Есть код.Помогите реализовать задачу.Готов заплатить денег.





    <html>
    <head>
    <title>Главная Моего Сайта</title>
    </head>
    <body>
    <h1>Очень полезный сайт</h1>
    <h2>Вы можете найти себя в базе данных ниже по Ф.И.О или номеру рабочего места и,
    нажав на кнопку рядом получить 100 р. за обед</h2>




    <?php
    // $row=mysql_fetch_row($result);
    /* Соединение, выбор БД */
    //include_once ("price.php");
    include_once ("INDEX.php");


    $link = mysql_connect("localhost", "Maxim", "123qaz") or die("Не соединилось!!!");



    mysql_select_db("Many") or die("Не найдена БД");

    /* Выполнение SQL запроса */

    //if ($result) {
    /* Печать результатов в HTML */


    $i=0;
    $query = "SELECT * FROM Table1 ";
    $res = mysql_query( $query );
    echo '<table border="1">';;
    echo '<tr><th>ID</th><th>Ф.И.О работника</th><th>Компенсация</th></tr>';
    $i=0;
    while ( $item = mysql_fetch_array( $res ) )
    { $i=$i+1;

    echo '<tr>';
    echo '<td>'.$item['ID'].'</td>';
    echo '<td>'.$item['FIO'].'</td>';

    echo '<td>'.$item['MONEY'].'</td>';
    echo '<td><input type="checkbox" name="check[]" value=1/ >';



    //echo '<td><input type="checkbox" name="item[]" value="'.$item['ID'].'" /></td>';
    echo '</tr>';
    //echo' <td><input type="checkbox" name="checkbox[]" id="checkbox[]" value=$id />';
    }
    echo '</table>';

    )
    // if ($result) {
    /* Печать результатов в HTML */
    // echo "<form action="mysql_query("UPDATE MONEY SET MONEY +100 WHERE $criteria")">";
    print "</table border width=40% height=30%>\n";


    /* Освобождение памяти, занятой результатом запроса */


    require_once ('/excel/reader.php'); // подключаем класс


    ?>
    <td><form action='Sait.php' name='del'>
    <p><input type='submit' value='Получить деньги на обед' /></p></form></td>


    <h2>Ниже вы можете просмотреть и скачать отчёт в excele</h2>
    <td><form action='conv.php' ; method='post' name='met1'>
    <input type='submit' value='Отчёт' ></form></td>

    </body>
    </html>
  • tartar

    Сообщения: 186 Репутация: N Группа: Кто попало

    Spritz 22 июля 2012 г. 19:18, спустя 25 дней 21 час 20 минут

    Попробуйте на будущее избавится от привычки писать HTML + PHP вместе (если это не файл шаблонов, да и тут можно прикрутить шаблонизатор)
    По сути, ошибка у Вас в
    echo '<td><input type="checkbox" name="check[]" value=1/ >'; 

    Вы хотите в создать массив check который будет содержать ID пользователя, но почему-то указываете везде пользователя с ID 1
    измените на
    echo '<td><input type="checkbox" name="check[]" value="'.$item['ID'].'" >'; 


    Функция для начисления
    function AddMoney( $UserIds = array() ) {
    $UserIds = array_map('addslashes', $UserIds);
    $ConvertToString = implode(', ', $UserIds);
    return mysql_query("UPDATE `Table1` SET `MONEY`=`MONEY` + 100 WHERE `ID` IN( {$ConvertToString} )");
    }


    Накормите ей данные из $_POST['check'];
    $Update = AddMoney( $_POST['check'] );


    Лучше уже переписать весь код а то это пиздец.
  • LIFF

    Сообщения: 188 Репутация: N Группа: Адекваты

    Spritz 26 июля 2012 г. 1:26, спустя 3 дня 6 часов 8 минут

    tartar, я давно не был на этом форуме, поэтому получай.))

    Твой(ваш) код(пример), тоже полный пиздец! Если будут вопросы почему, пиши, я поясню)
  • ForceMan

    Сообщения: 8 Репутация: N Группа: Кто попало

    Spritz 28 июля 2012 г. 0:30, спустя 1 день 23 часа 3 минуты

    Код конечно гавноват, не в обиду сказано.
    Я бы просто просто проверял, если $_POST['nameCheckBox'] есть и содержит то, что нужно, то выполнять простейший запрос на добавление бабла.
    В реальной жизни от такой функции бы не отказался :) А по факту, если нужно за монету помочь, пиши в ICQ: 567777707

Пожалуйста, авторизуйтесь, чтобы написать комментарий!