2012-03-23 12 views
6

mi imbatto in questo modo: -come usare eccezione tiro nel database mysql collegare

PHP Error handling: die() Vs trigger_error() Vs throw Exception

e compreso tale eccezione tiro è meglio

Come posso sostituire dado e l'uso tiro eccezione qui, in questa codice: -

<?php 
# FileName="Connection_php_mysql.htm" 
# Type="MYSQL" 
# HTTP="true" 
$hostname_db = "localhost"; 
$database_db = "database"; 
$username_db = "root"; 
$password_db = "password"; 
$db = mysqli_connect($hostname_db, $username_db, $password_db) or die("Unable to connect with Database"); 
?> 
+0

Mi chiedevo la stessa cosa. Grazie per aver postato questa domanda :) –

risposta

9
try 
{ 
    if ($db = mysqli_connect($hostname_db, $username_db, $password_db)) 
    { 
     //do something 
    } 
    else 
    { 
     throw new Exception('Unable to connect'); 
    } 
} 
catch(Exception $e) 
{ 
    echo $e->getMessage(); 
} 
+0

ho bisogno di sostituire 'die (" Impossibile connettersi con il database ");' con il tuo codice? Puoi anche dirmi cosa è '@ $ _ POST ['variabile']' –

+1

Dovresti sostituire l'ultima riga con questo. @ - sta abilitando la modalità silenziosa, nessun errore verrà echoato ma comunque registrato nel file error.log del server. Immagino tu sappia cosa sia '$ _POST ['variable']'. – slash197

+0

sì lo so che ... grazie per le informazioni :) –

3

è documentato qui 0.123.

if (mysqli_connect_errno()) { 
    throw new RuntimeException("Connect failed: %s\n", mysqli_connect_error()); 
} 
+1

ok '$ db = mysqli_connect ($ hostname_db, $ username_db, $ password_db) or die ("Impossibile connettersi con il database");' devo sostituire con questo '$ db = mysqli_connect ($ hostname_db, $ username_db, $ password_db); if (mysqli_connect_errno()) { lanciare nuove RuntimeException ("Connessione non riuscita:% s \ n", mysqli_connect_error()); } ' –

Problemi correlati