本帖最后由 baolang00 于 2010-04-09 17:27:17 编辑

解决方案 »

  1.   

    mysqli扩展没打开吧
    php.ini文件 enxtension=php_mysqli.dll 去掉分号 保存重启Apache
      

  2.   

    你的写法是错误的
    你想实现的方式可参考 PDO 的 bindValue() 方法
      

  3.   

    $stmt = $conn->stmt_init();------------------------
    $stmt对象是什么?mysqli用法错了, 建议你先看下手册http://cn2.php.net/manual/en/mysqli.affected-rows.php
      

  4.   

    感谢各位,说的都对。环境没配置好,语法也不对。我换了个集成环境(PHPnow),环境没问题了,而且能看见语法错误。改成如下代码,运行通过了,3Q~~,结贴。$conn = new mysqli("localhost", "root", "111", "mydb");
    if (mysqli_connect_errno()) {
        printf("Errors:%s\n", mysqli_connect_error());
    } else {
        $sql = "INSERT INTO P_USERS(USERNO,REALNAME,USERNAME,PASSWORD,USERFLAG) VALUES(?,?,?,?,?)";
        $stmt = $conn->prepare($sql);
        $userNo = $_POST["teaNo"];
        $realName = $_POST["realName"];
        $userName = $_POST["userName"];
        $password = $_POST["password"];
        $userFlag = $_POST["userType"];
        $stmt->bind_param("sssss", $userNo, $realName, $userName, $password, $userFlag);
        $stmt->execute();
        printf("%d Row inserted.\n",  $stmt->affected_rows + "  " + $userNo);
        $stmt->close();
        $conn->close();
        printf("Success:%s\n", "Insert Success!");
    }