2013-04-26 5 views
-1

Я не кодер каким-либо образом. Это не мой собственный код, я получил его от Google, но я считаю, что он служит моей цели. Я пытаюсь обновить запись mysql через php. Это не работает! Это ничего не делает для базы данных.UPDATE mysql record from php

<?php 
$con=mysqli_connect("localhost","radius","radius","radius"); 
// Check connection 
if (mysqli_connect_errno()) 
{ 
echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 

mysqli_query($con,"UPDATE userinfo SET enableportallogin=1 WHERE city='NULL'"); 
mysqli_close($con); 
?> 

В чем проблема?

+0

Есть ли у вас проверить ошибку с помощью 'mysqli_error ($ CON);'? – Rikesh

+0

'' NULL'' - это строка с четырьмя буквами в ней. 'NULL' (обратите внимание на отсутствие кавычек) является значением NULL SQL,« неизвестным »значением. –

ответ

1

Попробуйте этот запрос

"UPDATE userinfo SET enableportallogin='1' WHERE city IS NULL" 

Вы пытаетесь рассматривать NULL как значение, которое не является в реальной :)

2

Вы, вероятно, хотите сделать это:

mysqli_query($con,"UPDATE userinfo SET enableportallogin=1 WHERE city IS NULL"); 

Null ISN значение; это состояние «не имеет ценности». Трудно объяснить, но в основном проблема в вашем оригинале это:

  1. MySQL (и другие) всегда используют value IS NULL и не value = NULL.
  2. NULL не может быть в кавычках.
3

если NULL действительно NULL (не в виде строки), вы должны использовать IS NULL для проверки его значения,

UPDATE userinfo SET enableportallogin = 1 WHERE city IS NULL 
1

В этом запросе, использование IS NULL для сравнения значений города.

mysqli_query($con,"UPDATE userinfo SET enableportallogin=1 WHERE city is NULL"); 

При использовании этого также проверьте значение по умолчанию для поля города в вашей схеме.

Для получения дополнительной справки см по этой ссылке: http://dev.mysql.com/doc/refman/5.0/en/working-with-null.html