如何在php中连接单引号?

如何在php中连接单引号?,php,mysql,concatenation,Php,Mysql,Concatenation,我试图在php文件中创建一个简单的sql语句,将两个值插入数据库。它抛出了我为无效sql语句实现的错误,我认为这是因为VALUES()部分是错误的。如何连接sql语句的单引号?数据库值应为varchars $sql = "INSERT INTO visitor_log_marcusw1(email_user, email_provider) " . "VALUES ('".$email_user."' , '".$email_provider."')"; mysqli_query($con

我试图在php文件中创建一个简单的sql语句,将两个值插入数据库。它抛出了我为无效sql语句实现的错误,我认为这是因为
VALUES()
部分是错误的。如何连接sql语句的单引号?数据库值应为varchars

$sql = "INSERT INTO visitor_log_marcusw1(email_user, email_provider) "
 . "VALUES ('".$email_user."' , '".$email_provider."')";


mysqli_query($con, $sql);

 if (mysqli_query($conn, $sql)) {    
   echo "New record created successfully";
   } else {
   echo "Error: " . $sql . "<br>" . mysqli_error($conn);
  } 
$sql=“插入访客日志”marcusw1(电子邮件用户、电子邮件提供商)
. “值(“$email\u user.”、“$email\u provider.”);
mysqli_查询($con,$sql);
if(mysqli_查询($conn,$sql)){
echo“新记录创建成功”;
}否则{
echo“Error:”.$sql.
“.mysqli_Error($conn); }
使用mysql函数mysql\u real\u escape\u字符串($php\u变量)

$sql = "INSERT INTO visitor_log_marcusw1(email_user, email_provider) \n"
 . "VALUES (mysql_real_escape_string($email_user) , mysql_real_escape_string($email_provider)";
试试这个:

$sql = "INSERT INTO visitor_log_marcusw1 (email_user, email_provider) VALUES ('{$email_user}' , '{$email_provider}')";
此外,连接名($conn vs$con)中似乎有输入错误

替换为

if (mysqli_query($con, $sql)) {  

$con而不是$conn

将新行放入查询中有什么原因吗?为什么在查询中使用“\n”mysql抛出的确切错误是什么?这是我实现的第三个“版本”,我最近刚刚添加了新行,原因是我使用myphpadmin创建insert语句,并使用其接口选项将其转换为php,其中包含新行。错误由php代码引发。这是我自己的if语句,它捕捉到了错误,一点用处都没有。它没有告诉任何关于代码的信息,只是我试图用php创建的sql语句无效。函数不是用字符串计算的。这是一个php函数mysql\u real\u escape\u string,没有意义,因为我将用php发送sql字符串方法。$save_search_query_insert=“insert INTO user_search_query value($loggedInUserId)”。$mysqli->real_escape_string($query)。“,”,“$mysqli->real_escape_string($search_desc)。”)在重复键更新搜索上的结果$mysqli->real\u escape\u字符串($query)。“',search_desc=”$mysqli->real_escape_string($search_desc)。"'" ; 我在代码中使用了它,它适用于包含特殊字符的字符串。谢谢,这似乎是连接单引号最准确的方法。但是它仍然不起作用,所以它一定是php文件的另一部分出了问题。
if (mysqli_query($con, $sql)) {