php向mysql数据库添加错误值

标签 php mysql

我已经为 Android 应用程序构建了一个 Air,该应用程序将内容发布到 facebook,并在成功时向 php 文件发送一个 url 查询,以添加内容的帖子 ID 以及 fb_id 和用户名。问题是它没有添加我给它的值,而是将相同的数字(不知道它来自哪里)添加到 post_idfb_id 中。我知道移动应用程序正在发送正确的值。

php:

<?php
/*
------------variables set in flash--------------

 videoVars.postId = result.id
 videoVars.uid = uid //fb user id
 videoVars.firstName = firstName
 videoVars.lastName = lastName

*/

$postId = $_REQUEST['postId'];
$uid = $_REQUEST['uid'];
$firstName = $_REQUEST['firstName'];
$lastName = $_REQUEST['lastName'];

echo $postId.'<br/>';
echo $uid.'<br/>';
echo $firstName.'<br/>';
echo $lastName.'<br/>';



//connect to database
include('db-connect.php');

$addVideo = mysqli_query($dbc , "INSERT INTO content (content_id, post_id, fb_id, first_name, last_name ) VALUES('','".$postId."','".$uid."','".$firstName."','".$lastName."')");

?>

我得到的 post_id 和 user_id 的值是相同的,尽管它们应该是不同的。我手动将变量输入到浏览器的地址栏中,但它仍然以同样的方式出现错误。我可以添加多行的唯一方法是将其添加到 phpMyAdmin

的 sql 选项卡中

最佳答案

如果您的 echo 调用输出正确的值,请检查您的数据库表结构并确保没有为 fb_id 设置 UNIQUE 键。

然后,确保使用 mysqli_real_escape_string ( mysqli $link , string $escapestr ) 转义所有内容http://ca3.php.net/manual/en/mysqli.real-escape-string.php

content_idauto_increment 值吗?如果是这样,请尝试为其传递 NULL(不带单引号),而不是空字符串。

要调试,您还可以尝试回显您的查询(首先将其分配给变量 $sql = "[QUERY HERE]";,然后将该变量传递给函数,然后回显 $sql 变量,最后手动调用您的文件。

关于php向mysql数据库添加错误值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22810010/

相关文章:

python - 为什么没有人关心这个 MySQLdb 错误?这是一个错误吗?

php - MySQL/PHP - 无法更新数据库条目

php - 最佳 PHP 工作流程

php - session ID 在 CodeIgniter 中发生变化

php - 在php上查看数据时给出默认值

php - MySQL 按两个值排序

PHP { } 和 {{ }} 有什么区别

php mysql Paypal IPN mysql查询有问题

mysql - 选择重复项

mysql - 遍历 MySQL 行