2016-11-09 11 views
0

データベースに接続するのが難しいですが、失敗しました.xamppをPHP 7.0.8で使用していますが、データベースにアクセスする方法が分かりません。 誰かが私を助けることができますか?あなたがmysqli代わりのmysqlを使用する必要が私はxamppデータベースに接続しようとしましたが失敗しました

mysql_connect("localhost", "root", "") or die (mysql_error()); 
+0

「私はとても頑張っています」と「失敗しています」とは、正確に何を意味していますか? – arkascha

+2

mysqlはPHP 7ではサポートされていません - mysqliを使用してくださいこの拡張機能はPHP 5.5.0では廃止され、PHP 7.0.0では削除されました。 http://php.net/manual/en/mysql.installation.php – jeff

+0

ありがとう、arkaschaそれは私に手がかりを与えた –

答えて

1

あなたはmysqli_代わりmysql_の原因mysql_は、PHP 5.5.0で廃止されました。必要があります。 後はsyntaxmysqliためです。

データベースに接続するには、PHPで処理できる3つのオプションがあります。

MySQLiをオブジェクト指向

<?php 
$servername = "localhost"; //the host 
$username = "username"; // the db_username 
$password = "password"; //the db_paswword 
$dbname = "dbanme"; //your databasename 

// do a new connection here 
$conn = new mysqli($servername, $username, $password); 

// echeck here for errors 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 
echo "Connected successfully"; 
?> 


MySQLiを手続き

<?php 
$servername = "localhost"; 
$username = "username"; 
$password = "password"; 

// Create connection 
$conn = mysqli_connect($servername, $username, $password); 

// Check connection 
if (!$conn) { 
    die("Connection failed: " . mysqli_connect_error()); 
} 
echo "Connected successfully"; 
?> 


PDO

<?php 
$servername = "localhost"; 
$username = "username"; 
$password = "password"; 

try { 
    $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password); 
    // set the PDO error mode to exception 
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
    echo "Connected successfully"; 
    } 
catch(PDOException $e) 
    { 
    echo "Connection failed: " . $e->getMessage(); 
    } 
?> 

と、少なくともあなたはに持っているが、この3つのパラメータに関連閉じる:MySQLiをオブジェクト指向については

  1. それは次のようになります。MySQLiをするために$conn->close();
  2. 手続き、それは次のとおりです。PDOについてはmysqli_close($conn);
  3. それは:$conn = null;

あなたは最高のために今何を使うべきですか?

MySQLiをとPDOの両方が彼らの利点があります。

PDOは、12種類のデータベースシステム、MySQLiをは、MySQLデータベースとのみ動作するように動作します。

したがって、別のデータベースを使用するようにプロジェクトを切り替える必要がある場合は、PDOによってプロセスが簡単になります。接続文字列といくつかのクエリを変更するだけです。 MySQLiではのコード全体をに書き直す必要があります。

どちらもオブジェクト指向ですが、MySQLiでは手続き型APIも提供しています。

いずれもPrepared Statementsをサポートしています。Prepared StatementsはSQLインジェクションから保護し、Webアプリケーションのセキュリティにとって非常に重要です。

+0

完璧、私はそれを得た! MySQLiオブジェクト指向の私のために働いた。初心者ですから、PDOは私のために複雑に見えます。 –

+0

@CENTCIあなたが助けてくれれば答えを受け入れるかもしれません:) – Blueblazer172

+0

残念ながら、私は初心者であると知っているので、私は現時点で投票できません。私はいくつかのポイントを累積する必要があります。しかし、あまりにもありがとう@ Blueblazer172 –

2

は、ここに私のコードです。 mysqlの拡張機能は現在deprecatedです。すべての最初の

mysqli_connect(host,username,password,dbname,port,socket); 
関連する問題