2013-02-12 4 views
-4

Я пытаюсь загрузить и обновить содержимое всей таблицы. У меня нет проблем с загрузкой данных, но это не будет обновляться .. Может кто-нибудь сказать мне, что я делаю неправильно здесь:MySQL Обновление всей таблицы в одном запросе

while($show_table = mysql_fetch_array($result_table)){ 
    echo "<tr><td><input type='text' name='table_id' value='" . 
     $show_table["id"] . "'/><input type='text' name='table_date' value='" . $show_table["date"] . "'/> 
     </td><td>&euro; <input type='text' name='table_week' value='" . $show_table["week"] . "'/> 
     </td><td>&euro; <input type='text' name='table_midweek' value='" . $show_table["midweek"] . "'/> 
     </td><td>&euro; <input type='text' name='table_weekend' value='" . $show_table["weekend"] . "'/> 
     </td><td><input type='text' name='table_type' value='" . $show_table["type"] . "'/> 
     </td><td><input type='text' name='table_information' value='" . $show_table["information"] . "'/></td></tr>"; 
} 

echo "</table> 
<p><input type='submit' id='form_submit' name='update_confirm' value='Tarieven bijwerken'></p> 
</form>"; 

if ($_POST['update_confirm'] == 'Tarieven bijwerken') { 
    $id = $_POST['table_id']; 
    $date = $_POST['table_date']; 
    $week = $_POST['table_week']; 
    $midweek = $_POST['table_midweek']; 
    $weekend = $_POST['table_weekend']; 
    $type = $_POST['table_type']; 
    $information = $_POST['table_information']; 

    $update_table = "UPDATE tarieven SET date='$date', week='$week', midweek='$midweek', weekend='$weekend', type='$type', information='$information' WHERE id='$id';"; 
    $confirm_table = mysql_query($update_table); 

} else { 
} 
+0

Вы попробовали распечатать запрос? Проверьте, что запрос после печати, и попробуйте запустить его в подсказке SQL-запроса mysql. Любая конкретная ошибка будет подсвечена там! Попробуйте добавить ** подробнее **! – KillABug

+1

Вы получаете какую-либо ошибку?, Вы уверены, что update_confirm == 'Tarieven bijwerken'? Какова структура таблицы? вам нужно быть более конкретным – jcho360

+0

Вы должны прочитать на sql-инъекции. – jeroen

ответ

0

Ваш запрос обновляет только один ряд, как указано UPDATE tarieven SET ... WHERE id='$id' - хотя вы зацикливание через все записи и их отображение обновление выходит за пределы цикла.

+1

Вы можете указать в форме, что id является '1 'ИЛИ' 1' :-) – jeroen

+0

Действительно - я цитировал исходный текст. Возможно, вопросы PHP/MySQL должны получить автокомментарий, указывающий на лучшие практики SQL-инъекций ... – Raad

+0

Привет, Раад, я думаю, что вы правы! С обновлением в цикле он работает так, как я хочу! Спасибо всем вам за помощь. (Я хочу показать результаты после исправления, но я должен ждать 8 часов ..) – 2013-02-12 15:02:02

Смежные вопросы