Home >Backend Development >PHP Tutorial > 数据库的插入,该怎么处理

数据库的插入,该怎么处理

WBOY
WBOYOriginal
2016-06-13 13:37:35956browse

数据库的插入

$conn = mysql_connect("localhost","root","1234567");
mysql_query("SET NAMES 'utf8'");
if (!$conn)
  {
  die('Could not connect: ' . mysql_error());
  }
  mysql_select_db("code", $conn);

  $sql="INSERT INTO keycode (key) VALUES ('$_POST[username]')";
  if($_POST[username]!=null){
  mysql_query($sql, $conn);
  echo "status='$_POST[username]'";
  }else
  echo "no number!";
  mysql_close();
?>

在flex端发送了一个参数过来,可为何插入不了的呢???
可以显示 echo "status='$_POST[username]'"; 这个,可是数据库里就是没看到有东西插入!!!!
各位高手,指点指点啊!!!!!


------解决方案--------------------
有可能是传递过来的中文无法正常插入。试下用英文能不能插入。如果可以的话 中文做一个iconv的转码.
------解决方案--------------------
mysql_query($sql, $conn) or die(mysql_error());//看看是否有错

echo mysql_affected_rows($conn); //看看出入了几条
------解决方案--------------------
这还不是错吗?
key 是 mysql 保留字,挪作他用时要转义

 $sql="INSERT INTO keycode (`key`) VALUES ('$_POST[username]')";
------解决方案--------------------
这种错误我以前也犯过啊
------解决方案--------------------

探讨
都不行啊!!!好生郁闷。
我把那个$sql 输出来是这样子的:INSERT INTO keycode (key) VALUES ('17')
然后我把它直接在mysql里运行提示说:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server vers……
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn