Når du bruger PHP til at oprette forbindelse til en database, som MySQL eller SQL Server , kan flere problemer opstår , herunder forkert login-oplysninger til manglende tabeller til forespørgsler, der mislykkes. Program en undtagelse handleren til at fange fejl, så du kan håndtere dem korrekt . Exception håndtering i PHP indebærer "Prøv , kaste og fange "-metoden. Først skal du " forsøge" at udføre en funktion eller en blok af kode . Hvis denne kode ikke lykkes, "smide " undtagelsen en handler , som " fanger " den og forhindrer webside fra visning uønskede resultater . Instruktioner
1
Åbn HTML-fil. Sæt markøren , hvor du vil håndtere en mulig undtagelse
2
Indtast følgende kode : .
Try {
$ conn = mysql_connect ( $ dbHost , $ dbUsername , $ DBPASS ),
Dette opstiller forsøget på at udføre en handling , i dette tilfælde , om oprettelse af en forbindelse til en MySQL-database . Du kan også prøve at oprette forbindelse til andre databaser , for eksempel ved at bruge " odbc_connect ()" funktionen til at oprette forbindelse til en Microsoft Access-database. Undtagelsen håndteringsproces forbliver den samme
3
Indtast følgende kode : Hej
if ($ DBH === false ) { kaste nyt Exception (1) ;} . else {
mysql_select_db ( $ dbname )
$ query = mysql_query ( "SELECT * FROM tabel ");
if ($ query === false ) { smide nye Exception (2) ;}
}
først, hvis erklæring kontrol for at se, om en PHP lavet en forbindelse til en database. Hvis ikke, kaster det en undtagelse og passerer "1" som undtagelsen budskab. Du kan ændre denne værdi til noget mere forståeligt. Hvis forbindelsen er etableret , koden forsøger derefter at forespørge en tabel. Hvis dette forsøg ikke lykkes , for eksempel fordi tabellen ikke eksisterer , PHP kaster en undtagelse og passerer "2" som undtagelsen budskab. Koden derefter lukker , hvis erklæring blokke og try-blok . Kast yderligere undtagelser eventuelt baseret på, hvad slags interaktioner din kode gør med databasen
4
skrive følgende kode : .
Catch ( Exception $ e ) {
< p> if ( $ e -> GetMessage () == 1 ) {
echo "Kan ikke logge ind på databasen ."
} elseif ( $ e -> GetMessage () == 2 ) {
echo " Kan ikke udføre forespørgslen ."
}
}
Når PHP kaster en database undtagelse fangsten blokken henretter . Disse linjer bruger $ e undtagelsen variabel og udtrække det budskab videre til den. Hvis PHP ikke kunne oprette forbindelse til en database , der er den første fejlmeddelelse udskrives på websiden. Hvis det ikke kunne søge i databasen , er den anden budskab trykt . Skriv yderligere undtagelser inden for fangsten blokken for andre mulige fejl.
5.
Gem HTML-filen og uploade den til din webserver .