Я искал тщательно и ничего не работает; У меня есть этот код здесь, который помещается в мою базу данных, но проблема в том, что я пытаюсь запустить условие, которое проверяет, существует ли строка с помощью функции mysqli_num_rows, но она фактически не работает. Я пробовал много разных версий и других функций, таких как mysqli_fetch_row, но ничего не работает. Вот мой код:PHP Проверка mysqli_num_rows не работает
if (!empty($_POST)) {
$db_conx="";
$name = $_POST['name'];
$module = $_POST['module'];
$secret = $_POST['secret'];
$uid1 = $dmt->user['uid'];
$queryA = "INSERT INTO table_a (uid1,name,module,secret) VALUES ('$uid1','$name','$module','$secret')";
$resultA = mysqli_query($db_conx,$queryA);
$queryB = "SELECT 1 FROM table_a WHERE name='$name' LIMIT 1";
$resultB = mysqli_query($db_conx,$queryB);
$resultC = mysqli_query($db_conx,$queryB);
$query = mysqli_query($db_conx,"SELECT * FROM table_a WHERE name='$name'");
if (empty($name)||empty($module)||empty($secret)) {
echo "Oops! Can't leave any field blank <br />";
exit();
} elseif(mysqli_num_rows($query) > 0){
echo "name already exists.";
exit();
} elseif ($db_conx->query($queryA) === TRUE) {
echo "New record created successfully.";
exit();
} else {
echo "Error: " . $queryA . "<br>" . $db_conx->error;
exit();
}
}
Как видите, запрос кажется запущенным, но на самом деле не выполняет то, что сказано.
* Как * делает это, ни работы ? Вы получили сообщение об ошибке? Что вы получаете? –
Вы никогда не проверяете результат '$ query' или любой другой результат запроса, так как вы уверены, что он работает правильно? Вы вводите SQL для одного, так что это может быть причиной. (это также означает, что ваш код невероятно небезопасен) – h2ooooooo
Некоторый разумный отступ кода был бы хорошей идеей. Это поможет нам прочитать код и, что более важно, это поможет ** вы отлаживаете код ** [Взгляните на стандарт кодирования] (http://www.php-fig.org/psr/psr-2/) для вашей собственной выгоды. Вас могут попросить изменить этот код через несколько недель/месяцев, и в конце вы поблагодарите меня. – RiggsFolly