Я уверен, что это основная ошибка, но через несколько часов я все еще в тупике.Я просмотрел около дюжины «улов не работает», и ни один из них не показался мне полезным.
Я унаследовал этот фрагмент кода.ВСЕ переменные имеют значения (хотя некоторые являются пустыми строками).Больше чем основная проблема здесь, я беспокоюсь, что мой catch
не перехватывает ошибки (ранее оператор пытался сохранить значение в столбце, который не существовал и даже не выдавал исключение).
У меня есть это наверху.(Сначала я попытался с двумя операторами вместе, но это дало проблему - не могу вспомнить, что.)
$mysqli = new mysqli("localhost", "", "", ""); // private stuff taken out
mysqli_report(MYSQLI_REPORT_STRICT);
mysqli_report(MYSQLI_REPORT_ERROR);
Это основной код
$packageResult = $mysqli->query("INSERT INTO package (user_id,
package_name, weight, tracking_number, size_width, size_depth, size_height,
source, carrier, instructions, sent,ot48code) VALUES ({$_SESSION['id']},
'{$_POST['packageName']}', '{$_POST['weight']}',
'{$_POST['tracking_number']}', '{$_POST['width']}', '{$_POST['depth']}',
'{$_POST['height']}', '{$_POST['source']}', '{$_POST['carrier']}',
'{$_POST['instructions']}', NOW()),$ot48code");
Я немного отладил и, хотя $packageResult
возвращается FALSE, код catch
никогда не доступен.(Использование Xdebug в PhpStorm.)
catch (Exception $e)
{
echo "<pre>";
echo "<br>";
echo "ses testing at 171";
@var_dump($_SESSION);
echo "<br>";
...
echo $e->getMessage();
Это правильно для catch
?
(PS Я знаю, что все это ужасно небезопасно, но это для альфы, и я медленныймашинистка и довольно ужасный программист (без памяти).