我在检查用户在index.html中提供的URL是否存在于DB中时遇到问题。流程是这样的 - >用户在index.html中放入任何URL,然后process.php文件首先检查它是否存在于DB中。如果它不存在则URL将存储在DB中,如果存在则会发生错误。 以下是process.php文件。
<?php
$con=mysqli_connect("localhost","root","","url");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$url = $_POST['url'];
$result1 = mysqli_query($con,"SELECT * FROM url WHERE url='$url'");
while($check = mysqli_fetch_array($result1))
if ($check['url'] != $url); //check for url exist or not
{
$sql="INSERT INTO url (url) VALUES('$url')";
echo "added successfully";
echo '<br><br>';
}
else;
{
echo "URL already Exist";
}
mysqli_close($con);
?>
答案 0 :(得分:3)
从if
语句中删除分号
if ($check['url'] != $url); //<---- This one
和else
声明
else; //<--- This one too
答案 1 :(得分:0)
从if
和else
if ($check['url'] != $url) //check for url exist or not
------------------------------------------ ^ 删除半结肠
{
$sql="INSERT INTO url (url) VALUES('$url')";
$a=mysql_query($sql);//add this line to execute your query
-------- ^ 执行您的查询
echo "added successfully";
echo '<br><br>';
}
else//no semicolon
{
echo "URL already Exist";
}
答案 2 :(得分:0)
尝试删除不必要的分号
将else;
更改为else
。并从if语句中删除分号
如果您想重复查询while($check = mysqli_fetch_array($result1))
是否为空
while($check = mysqli_fetch_array($result1));
更改为$check
答案 3 :(得分:0)
在其他之后删除分号 替换:
else;
使用:
else
与if(条件)相同,在括号后删除分号
答案 4 :(得分:0)
if ($check['url'] != $url); //error
和
else; //error
这些会导致语法错误,请避免使用if和else语句中的分号(;)。
答案 5 :(得分:0)
替换else
而不是else;
并在;
条件
if
)