2
製造元を選択して製品の名前を書くことができる医薬品のフォームを作成しました。ユーザーが間違えてしまった場合は、入力を修正するようにユーザーに叫んでください。この目的のために、フロントエンドとバックエンドの検証を行っていますが、そのエントリはデータベース に入ります。例えば、ユーザがすでに存在する場合はユーザ名を選択し、このユーザが既に存在する場合はメッセージを表示します。データベースに行きます。複数のテーブルエントリを1つのアクションで入力
第2段階のSELECTでは、1つのテーブルからのデータがいくつかの検証を行い、別のテーブルに保存します。私が欲しいのはそれをどうやってやるのか?私はこのコードを試しても、エラーは発生しませんでしたが、データは2番目のテーブルに保存されません。
PHP:
//Select Everything from database
$perm = "SELECT * FROM test";
$result34 = mysqli_query($dbc, $perm);
if ($perm) {
//How many rows
$count = mysqli_num_rows($result34);
//Retrieve data
if($count==1) {
$rows = mysqli_fetch_array($result34);
$namex= $rows['name'];
$categoryx = $rows['category'];
//takeout the spaces and strip tags
$namey = strip_tags($namex);
$category = str_replace(' ', '', $category);
//INSERT INTO TABLES
$sql34 = "INSERT INTO final1 (Name, Category) VALUES ($namey, $category);";
$result55 = mysqli_query($dbc, $sql34);
}
}
EDIT:プリペアドステートメント
$sql2 = "INSERT INTO final1 (Name, Category) VALUES (?, ?);";
$stmt1 = mysqli_stmt_init($dbc);
if (!mysqli_stmt_prepare($stmt1, $sql2)) {
echo "SQL error";
} else {
mysqli_stmt_bind_param($stmt1, "ss", $namey, $category);
mysqli_stmt_execute($stmt1);
}
文字列を挿入する場合は、値を引用符で囲む必要があります – nogad
このような意味ですか? $ sql34 = "INSERT INTO final1( '名前'、 'カテゴリ')VALUES($ namey、$ category);"; –
これを試したところ $ sql34 = "INSERT INTO final1( 'Name'、 'Category')VALUES( '$ namey'、 '$ category');";まだ動作していません –