php - PHP 插入 mysql 后丢失数据

标签 php jquery mysql ajax eventbrite

我正在使用 Eventbrite Jquery 插件获取事件列表并使用 AJAX 将它们发布到 php 文件。然后我使用 PHP 将数据插入 mySQL。问题是,当我搜索 100 个事件时,它让我全部返回,但只有大约 80-85 个出现在数据库中。 谁能帮我解决这个问题?

这是我的 PHP 代码:

include_once('dbheader.php');

$event_id = $_POST['ID'];
$title= $_POST['TITLE'];
$category= $_POST['CATEGORY'];
$capacity= $_POST['CAPACITY'];
$date_created = $_POST['DATE_CREATED'];
$end_date = $_POST['END_DATE'];
$status = $_POST['STATUS'];
$event_url = $_POST['EVENT_URL'];
$organizer_name = $_POST['ORGANIZER_NAME'];
$organizer_url = $_POST['ORGANIZER_URL'];
$privacy = $_POST['PRIVACY'];
$repeats = $_POST['REPEATS'];
$venue_address = $_POST['VENUE_ADDRESS'];
$venue_city = $_POST['VENUE_CITY'];
$venue_country = $_POST['VENUE_COUNTRY'];
$venue_id = $_POST['VENUE_ID'];
$venue_postal = $_POST['VENUE_POSTAL'];
$venue_region = $_POST['VENUE_REGION'];
$venue_name = $_POST['VENUE_NAME'];

if(mysql_query("INSERT IGNORE INTO eventbrite (event_id,title,category,capacity,date_created,end_date,status,event_url,organizer_name,organizer_url,privacy,repeats,venue_address,venue_city,venue_country,venue_id,venue_postal_code,venue_region,venue_name)VALUES ('$event_id','$title','$category','$capacity','$date_created','$end_date','$status','$event_url','$organizer_name','$organizer_url','$privacy','$repeats','$venue_address','$venue_city','$venue_country','$venue_id','$venue_postal','$venue_region','$venue_name')")){

echo "Success";
}
else
{echo "Failed";}

编辑:

使用 real_escape_string 修复了它。这是我第一次使用 mySQL。非常感谢所有提供帮助的人。

P.S:我肯定会阅读 SQL 注入(inject)和准备好的语句

最佳答案

首先,考虑从 mysql_query 切换到 PDO prepared statements .它对于重复插入是安全且高性能的。它具有非常直观的语法。

第二:尝试将所有事件存储在一个更大的 JSON 批处理中,以向后端发送一个大请求并执行多次插入而不是 100 个小请求。

此时,您可能正在使用 100 个并发请求来处理您自己的后端。一些请求被丢弃并且 ajax 异步性质默默地超时。

关于php - PHP 插入 mysql 后丢失数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24143678/

相关文章:

如果未找到 MySQL 更新行 insert -Preference for update first

php - 无法使用 Eloquent 即时创建新表

php - 从多维数组创建子类别层次结构

php - 为什么我会返回重复的结果?

php - mysql时间戳转换/格式化通知: A non well formed numeric value encountered

javascript - 使用 Jeditable 插件验证 URL 字段

javascript - Bootstrap 缩略图对齐(水平)

html - 计算自定义字段的不同值的数量

jquery - 如何根据模型值隐藏 div 元素? MVC

mysql - ActiveRecord 十进制类型字段截断为整数