<?php$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]'";  这个,可是数据库里就是没看到有东西插入!!!!
各位高手,指点指点啊!!!!!

解决方案 »

  1.   

    有可能是传递过来的中文无法正常插入。试下用英文能不能插入。如果可以的话 中文做一个iconv的转码.
      

  2.   

    mysql_query($sql, $conn) or die(mysql_error());//看看是否有错echo mysql_affected_rows($conn); //看看出入了几条 
      

  3.   

    都不行啊!!!好生郁闷。
    我把那个$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 version for the right syntax to use near 'key) VALUES ('17')' at line 1这个语句语法真有错误吗?我用的是5.5.16的mysql??
      

  4.   

    这还不是错吗?
    key 是 mysql 保留字,挪作他用时要转义 $sql="INSERT INTO keycode (`key`) VALUES ('$_POST[username]')";
      

  5.   

    赞成4楼的回答。别外,你把你的表desc 表名一下看看
      

  6.   

    嗯嗯!!真行了!!!刚学的数据库,竟然忘了key····   真是十分感谢了!!!
     
           
      

  7.   

    刚刚看到,想说,key是mysql关键字,不能用,换个字段名
      就解决了……看来,我来迟了……