#新来攻撃# 単純なコードでエラーが発生するのはなぜですか
public function addemail(){
$email_name=$_POST['name'];
$email_email=$_POST['email'];
$con=mysqli_connect("localhost","root","root","bottlelover")
または die('接続エラー');
mysqli_set_charset($con, " utf8");
$sql="SELECT * FROM email_list WHERE email_email = $email_email";
$result=mysqli_query($con,$sql)
または die('query1 error' ) ;
if($row=mysqli_fetch_array($result)){
$this->assign("res",'メールボックスが使用されており、ユーザーの追加に失敗しました');
mysqli_close( $con);
$this->display("Bottleloveradd");
}
else {
$sql="メールリストに挿入(メール名,メールアドレス) 値 ('$メール名', '$email_email')";
$result=mysqli_query($con,$sql)
または die('query2 error');
$this->assign("res",'新しいユーザーが正常に追加されました');
mysqli_close($con);
$this->display("Bottleloveradd");
}
}
----- - -------------------------------------- 上記はコードです ---- ------ ----------
私の目的は、新しいユーザーを追加する前に、メール アドレスが使用されているかどうかを確認することです。
$sql="SELECT * FROM email_list WHERE email_email = $email_email" ;
$result=mysqli_query($con,$sql)
または die('query1 error');
このコードでは query1 エラーが表示され、他の操作は正常です。なぜ明らかに何も問題はありません。テーブル名は正しいです。列名も変数名も正しいです...
-----解決策------ ------- ------
$sql="SELECT * FROM email_list WHERE email_email = '$email_email'";
------解決策---------
文字型の数量は引用符で囲む必要があります
単純すぎるので無視されやすい
------解決策------------------
上の階の正解は、一重引用符が欠落していることです。 、これは文字列