Php mysql查询插入不适用于一个值,但适用于所有其他值
我通过php脚本从AS3接收VAR,并将其插入数据库。正如您在地址栏中看到的那样,所有的变量都被传递。。(我想对公众隐瞒,但不知道怎么做)。。然后我获取变量并插入到db表中。我想所有的桌子都摆好了。我也在抓拍Var的回声。除了“image_name”之外,所有变量都在工作,并且它也不会转换为echo的$tmp_名称。关于这个有什么想法吗。。 这是浏览器中保存变量的行Php mysql查询插入不适用于一个值,但适用于所有其他值,php,mysql,actionscript-3,insert,Php,Mysql,Actionscript 3,Insert,我通过php脚本从AS3接收VAR,并将其插入数据库。正如您在地址栏中看到的那样,所有的变量都被传递。。(我想对公众隐瞒,但不知道怎么做)。。然后我获取变量并插入到db表中。我想所有的桌子都摆好了。我也在抓拍Var的回声。除了“image_name”之外,所有变量都在工作,并且它也不会转换为echo的$tmp_名称。关于这个有什么想法吗。。 这是浏览器中保存变量的行 http://xx.xxx.xx.xxx/wordpress/?page_id=81imageName=WhitetailJack
http://xx.xxx.xx.xxx/wordpress/?page_id=81imageName=WhitetailJackalope%2Epng&imageURL=http%3A%2F%2Flocalhost%2Fxxx%2Fxxx%2FserverImages%2FwhiteTailJackalopeEgg%2Epng&imageID=40
这里是PHP
<?php
$tmp_id=$_GET['imageID'];
$tmp_url=$_GET['imageURL'];
$tmp_name=$_GET['imageName'];
mysql_connect("localhost", "xxx", "xxx") or die(mysql_error());
mysql_query ( "INSERT INTO wp_image_data (`image_id`, `image_url`, `user_name`, `image_name`, `stage`)
VALUES ('$tmp_id' , '$tmp_url' , '$current_user->user_login' , '$tmp_name' , 1)");
echo 'Testing: ' . $tmp_id . '<br/>'; //displays ok
echo 'Image: ' . $tmp_name . '<br/>'; //does not display or insert to table
echo 'Owner: ' . $current_user->user_login . '<br/>'; //displays ok
?>
数据库中图像名称的表格是VARCHAR(100)utf8\u ganeral\u ci
有什么想法吗
我已经按照建议用PDO格式重新构造了php,这似乎对我有好处。感谢您提供的信息:)
这是重新构造的代码。它工作得很好,除了图像名称,我需要弄清楚如何在wordpress中重新构造我的url
try {
$conn = new PDO("mysql:host=$hostdb; dbname=$namedb", $userdb, $passdb);
$conn->exec("SET CHARACTER SET utf8");
$sql = "INSERT INTO wp_image_data (image_id, image_url, user_name, image_name, stage)
VALUES ('$tmp_id', '$tmp_url', '{$current_user->user_login}', '$tmp_name', '1')";
$q = $conn->exec($sql);
$conn = null;
}
catch(PDOException $e) {
echo $e->getMessage();
}
echo 'Testing: ' . $tmp_id . '<br/>';
echo 'Image: ' . $tmp_name . '<br/>';
echo 'Owner: ' . $current_user->user_login . '<br/>';
试试看{
$conn=newpdo(“mysql:host=$hostdb;dbname=$namedb”、$userdb、$passdb);
$conn->exec(“设置字符集utf8”);
$sql=“插入wp\U图像\u数据(图像\u id、图像\u url、用户名、图像\u名称、阶段)
值(“$tmp_id”,“$tmp_url”,“{$current_user->user_login}”,“$tmp_name”,“1”)”;
$q=$conn->exec($sql);
$conn=null;
}
捕获(PDO$e){
echo$e->getMessage();
}
回声“测试:”$tmp_id
;
回显“图像:”$tmp_名称。”
;
回显“所有者:”$“当前用户->用户登录”
;
现在要处理url。。。是的,在我这样做的时候,有没有办法在地址栏中隐藏传递的变量?您的URL需要重新构造,以便在页面id值后面包含一个符号和:
http://xx.xxx.xx.xxx/wordpress/?page_id=81&imageName=WhitetailJackalope%2Epng&imageURL=http%3A%2F%2Flocalhost%2Fxxx%2Fxxx%2FserverImages%2FwhiteTailJackalopeEgg%2Epng&imageID=40
您应该设置查询并回显它以查看传递的内容
$query = "INSERT INTO wp_image_data (`image_id`, `image_url`, `user_name`, `image_name`, `stage`)
VALUES ('$tmp_id' , '$tmp_url' , '$current_user->user_login' , '$tmp_name' , 1)";
echo $query;
我建议在$current\u user->user\u login
周围使用花括号:
{$current_user->user_login}
您需要立即停止使用
mysql\u
函数。您的代码易受SQL注入攻击。有关详细信息,请参阅我的评论。。它们不再得到维护。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果您选择PDO,。使用这些查询字符串值构建URL的代码在哪里?在我的flash中。你想让我发布flash代码吗?@Flexxall你也需要这部分的帮助吗?或者你已经修好了吗?@ethorn10是的,协助url传递和重组将非常好。