-1

私はこのコードを使用します:

<?php
    // Get values from form
    $name= mysql_real_escape_string($_POST['name']);
    if (empty($name)) {
        echo "No information has entered";
        echo "<br/>";
        echo "<br/>";
        echo "<a href='index.php'>Return to Homepage</a>";
        exit;
    }

    $host="localhost"; // Host name
    $username="root"; // Mysql username
    $password=""; // Mysql password
    $db_name="pin"; // Database name
    $tbl_name="test"; // Table name

    // Connect to server and select database.
        mysql_connect("$host", "$username", "$password")or die("cannot connect");
        mysql_select_db("$db_name")or die("cannot select DB");

            // Insert data into mysql
            $sql = "UPDATE $tbl_name SET `Used` = '1' WHERE `test`.`Code` =$name;";
            //echo $sql; exit;
            $result=mysql_query($sql);

            // if successfully insert data into database, displays message "Successful".
            if($result){
                echo "Your Information </br>";
                echo "<BR>";
                echo "<a href='index.html'></a>";
                $result = mysql_query("SELECT Code FROM `test` WHERE  `Code` =$name" );
                    while ($row = mysql_fetch_array($result)) {
                            printf("Code: %s </br>", $row[0]); 
                                $foundcode=$row[0];
                    }
                    if (!empty($foundcode)) {
                        echo "<BR>";
                        echo "<a href='".$foundcode.".pdf'>Click here to download.</a>";
                    }
                        if (empty($foundcode)){
                        echo "<BR>";
                        echo "Password is wrong";
                        }
                        mysql_free_result($result);
                echo "<BR>";
                echo "<BR>";
                echo "<BR>";
                echo "<a href='index.php'>Exit</a>";
            }

            else {
                echo nl2br ("Entered Information are not valid, Please enter valid information </br></br>");
                echo "<a href='index.php'>Return to Homepage</a></br></br>";
            }

        // close connection
        mysql_close();
?>

しかし、私はこのエラーを受け取ります:

Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user 'root'@'localhost' (using password: NO)

ヘルプを読みましたが、修正できません。この問題に関する次のような回答を読みました。

  1. 致命的なエラー: PHP の非オブジェクトでのメンバー関数 prepare() の呼び出し 非オブジェクト エラー でのメンバー関数 prepare() の呼び出し 致命的なエラー: PDO を使用した非オブジェクトでのメンバー関数 prepare() の呼び出し

DBユーザーとパスを変更しましたが、その問題はまだ存在します。

4

1 に答える 1

0

mysql_real_escape_string()エスケープの実行方法は接続パラメータに依存するため、データベース接続が必要です。

PHP の MySQL 拡張機能は、データベース接続が必要な場合にデータベース接続を作成しようとしますが、使用できる接続が見つかりません。したがって、エラーメッセージ。

mysql_real_escape_string()の後に呼び出しmysql_connect()ます。

于 2013-07-27T10:31:13.063 に答える