2017-01-27 22 views
-3

今後の結婚式にオンラインRSVPを設定しようとしています。私のコードをGoDaddyのホスティングを通してSQLServerを使ってmySQLに適応させようとしています。私のデータベース接続ファイルでは、私は次のコードを持っている:私は、データベースに結果を投稿するフォームと参照別のPHPファイルが含まれている私のRSVP.phpページを開くと、"致命的なエラー:非オブジェクトのメンバ関数query()を呼び出す"データベース接続

<?php 


// function to connect to the database 

function dbConnect() 
{ 
    $serverName = 'localhost'; 
    $uName = 'codytaylorbrown'; 
    $pWord = 'G0Braves!'; 
    $db = 'BrownWedding'; 

    try 
    { 
     //instantiate a PDO object and set connection properties 

     $conn = mysql_connect($serverName , $uName , $pWord); 
mysql_select_db($db, $conn); 


     //return connection object 

     return $conn; 
    } 
    // if connection fails 

    catch (PDOException $e) 
    { 
     die('Connection failed: ' . $e->getMessage()); 
    } 
} 

//method to execute a query - the SQL statement to be executed, is passed to it 

function executeQuery($query) 
{ 
    // call the dbConnect function 

    $conn = dbConnect(); 

    try 
    { 
     // execute query and assign results to a PDOStatement object 

     $stmt = $conn->query($query); 

     do 
     { 
      if ($stmt->columnCount() > 0) // if rows with columns are returned 
      { 
       $results = $stmt->fetchAll(PDO::FETCH_ASSOC); //retreive the rows as an associative array 
      } 
     } while ($stmt->nextRowset()); // if multiple queries are executed, repeat the process for each set of results 
    die; 

//call dbDisconnect() method to close the connection 

     dbDisconnect($conn); 

     return $results; 
    } 
    catch (PDOException $e) 
    { 
     //if execution fails 

     dbDisconnect($conn); 
     die ('Query failed: ' . $e->getMessage()); 
    } 
} 
function dbDisconnect($conn) 
{ 
    // closes the specfied connection and releases associated resources 

    $conn = null; 
} 

?> 

は、私はエラーを取得する

Fatal error: Call to a member function query() on a non-object in /home/ctbrown24/public_html/DBConnect.php on line 50 

私は非常にPHPに精通しておらず、私の結婚式のウェブサイトを勉強の方法として構築しているので、これについての助けに感謝します。 TIA!

+0

は 'mysql_connect'は' object' –

+0

を返しません。私は、PDOがサーバーにインストールされている、これはクラスのためであると仮定していますか? – bassxzero

+0

あなたは 'mysql_ *'接続を作成しています。 'mysql_ * 'を使用しないでください。これは古いバージョンでは安全ではなく、PHP 7以降から削除されています。また、オブジェクト指向の方法で使用することもできません。 – apokryfos

答えて

0

mysql APIを使用して最初のステップでデータベースに接続しますが、mysqli APIを使用していた場合に期待される接続オブジェクトを取得しようとします。 mysqli接続オブジェクトを扱っていないため、その後のqueryメソッドへの呼び出しは機能しませんでした。

このトピックの詳細については、これを読む: http://php.net/manual/en/mysqlinfo.api.choosing.php

関連する問題