2015-08-10 3 views
-4

Что не так с этим кодом? Я пробовал это несколько раз, но моя БД не обновляется после отправки. У меня есть таблица с в последних столбцах. Флажки правильно отображают значение из БД, но я также хочу, чтобы опция обновила БД с помощью флажков. Поэтому, если значение равно 1, флажок установлен, но я хочу, чтобы он мог снять его (или проверить другой, который не отмечен), и нажмите кнопку отправки ниже, чтобы изменить значение в БД.Обновление базы данных mysql с формой

$sql = "SELECT * FROM registered ORDER BY datum" ; 
$myData=mysql_query($sql) ; 
?> 

<table width="1100" border="1"> 
<tr> 
    <th style="text-align:center; padding:0 10px"><b>naam</th> 
    <th style="text-align:center; padding:0 10px">betaald?</b></th> 
</tr> 

<?php 

if(isset($_POST['submit'])){ 

    $betaald = $_POST['betaald']; 

    mysql_query($con,"UPDATE registered SET betaald='$betaald'"); 

    header("Location: index.php"); 

} ?> 


<?php 

    while($record = mysql_fetch_array($myData)) 
    { 
     ?> 

     <tr> 
      <td> <?php echo $record['naam'] ?></td> 
      <form method="post" action="<?php echo $PHP_SELF;?>"> 
      <td> <input type='checkbox' name='betaald' id='betaald' value='1' <?php echo ($record['betaald']==1 ? 'checked' : '')?>> </td> 

     </tr> 

<?php 

    } 

    mysql_close($con); 

?> 


</table></p> 

<input style="border:1px solid black" name="submit" type="submit" value="Save changes"> 

</form> 
+0

Сколько записей вы имеете в дб ? Что такое «первичный ключ» в db? – Hassaan

+0

С одной стороны, идентификаторы должны быть уникальными, и кто-то даже сказал, что в вашем другом вопросе. –

+0

, тогда эта строка неверна 'mysql_query ($ con," UPDATE зарегистрировано SET betaald = '$ betaald' ");' –

ответ

0

Вы передали неправильные параметры mysql_query().

Синтаксис является mysql_query($query); Второй параметр является необязательным

Удалить $con из функции.

+0

Я сделал это, но все равно не работает :( –

+0

Затем сделайте одно. Объедините функцию header() и распечатайте запрос на обновление – ManiMuthuPandi

+0

У меня есть один шаг: теперь каждый раз, когда я нажимаю кнопку sumbit, он дает все значения строк «1», поэтому каждый флажок установлен. В sumbit он просто дает каждой строке значение «1». что я проверяю или снимаю с себя, он всегда дает всем строкам одинаковое значение. –

0

Согласно руководству по php.net, первые парами является запросом, а второй является идентификатор ссылки (в качестве $ CON), который не является обязательным

mixed mysql_query (string $query [, resource $link_identifier = NULL ])

+0

вы можете добавить имя db перед именем таблицы, например 'register', в' db_name.registered'. Если это не поможет, вы можете попробовать echo mysql_errno() AND mysql_error() после запроса –

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