我想要做的是INSERT我的数据库中的订阅者,但IF EXISTS它应该UPDATE是行,ELSE INSERT INTO一个新行.
Ofcourse我连接到数据库第一和GET的$name,$email并$birthday从URL字符串.
$con=mysqli_connect("localhost","---","---","---");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$name=$_GET['name'];
$email=$_GET['email'];
$birthday=$_GET['birthday'];
Run Code Online (Sandbox Code Playgroud)
这可行,但只是添加新行;
mysqli_query($con,"INSERT INTO subs (subs_name, subs_email, subs_birthday)
VALUES ('$name', '$email', '$birthday')");
mysqli_close($con);
Run Code Online (Sandbox Code Playgroud)
这是我尝试过的;
mysqli_query($con,"INSERT INTO subs (subs_name, subs_email, subs_birthday)
VALUES '$name', '$email', '$birthday'
ON DUPLICATE KEY UPDATE subs_name = VALUES($name), subs_birthday = VALUES($birthday)");
mysqli_close($con);
Run Code Online (Sandbox Code Playgroud)
和
mysqli_query($con,"IF EXISTS (SELECT * …Run Code Online (Sandbox Code Playgroud) 我确实只是复制并粘贴了来自YouTube开发者页面的iframe嵌入式YouTube播放器API参考代码(来自"使用入门"标题下方).唯一的区别是,当状态改变时我添加了一个警报,因为我认为我在onPlayerStateChange函数中做错了.
你可以在http://jsfiddle.net/jesMv/看到jsFiddle .
如上所述,它只是YouTube开发人员页面中添加的代码的精确副本
alert('State Changed')
Run Code Online (Sandbox Code Playgroud)
作为在onPlayerStateChange函数中触发的第一件事.
然而,没有任何事情发生......无论我如何看待这个以及我改变了什么,我都无法让onStateChange做任何事情.
我该如何解决这个问题?