-4
私は完全に検索しましたが、何も動作していないようです。私はこのコードをここに私のデータベースに投稿しますが、問題は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();
}
}
クエリを実行するように見えるが、実際にそれが告げ何行いません見ることができるように。
をreadngされていないよう
をデバッグしようとしているスクリプトの最初の2行としてこれらを追加します。 ?間違いはありますか?何を手に入れますか? –
'$ query'や他のクエリ結果の結果を決してチェックしていないので、それが正しく実行されていることをどのように確信していますか?あなたは1つのためにSQLを注入しているので、簡単に理由がある可能性があります。 (それはあなたのコードが信じられないほど信じられないことを意味します) – h2ooooooo
分かりやすいコードの字下げが良い考えです。それは私たちがコードを読むのを助け、もっと重要なのは**あなたがコードをデバッグするのに役立つでしょう** [コーディング標準を見てください](http://www.php-fig.org/psr/psr-2/ )あなた自身の利益のために。あなたはこのコード を数週間/数ヶ月で修正するように頼まれるかもしれません。そして、あなたは私に最後に感謝します。 – RiggsFolly