>백엔드 개발 >PHP 튜토리얼 >数据库的插入,该怎么处理

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

WBOY
WBOY원래의
2016-06-13 10:15:371049검색

数据库的插入

$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……
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.