MySQL набор результатов, когда некоторые данные отсутствуют? - PullRequest
0 голосов
/ 07 января 2012

что происходит в mysql, если нет данных для вставки. что означает следующий код:

            $result = mysql_query("INSERT INTO table (column1, column2) 
                                    VALUES ('$var1', '$var2')");
            mysql_close();

Если $ var2 пусто, что происходит с последующим if($result)? $ var1 и $ var2 были извлечены из массива примерно так:

        $var1= $data->var1;
        $var2= $data->var2;

И я случайно узнал, что var2 не (или ничего не должен возвращать, поскольку этого не было в исходном наборе данных, извлеченных массивом).

В основном моя страница останавливается, и ничего не происходит, когда она должна войти в это if ... но это не так. Имеет ли это смысл? Я думал, что $ result существует до тех пор, пока внутри него что-то происходит? Дело в том, что else тоже не происходит, весь код просто останавливается в середине ...: (

1 Ответ

1 голос
/ 07 января 2012
       $result = mysql_query("INSERT INTO table (column1, column2) 
                                VALUES ('$var1', '$var2')");
        mysql_close();

Если $ var2 пусто, что происходит с последующим if ($ result)?

Нет данных "отсутствует". Пустая строка ("") является совершенно допустимым значением поля.


$ var1 и $ var2 были извлечены из массива следующим образом:

    $var1= $data->var1;
    $var2= $data->var2;

Вы не можете получить данные из массива, как этот, поэтому нет, они не были.


Дело в том, что иного не происходит, весь код просто останавливается в середине ...: (

Включить ведение журнала ошибок. У вас где-то есть ошибка, которую вы не видите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...