Ved bruk av PHP for å koble til en database , som MySQL eller SQL Server , kan flere problemer oppstå , inkludert uriktig påloggingsinformasjon til manglende tabeller i spørringer som mislykkes . Program et unntak behandleren å fange feil slik at du kan håndtere dem på riktig måte . Avvikshåndtering i PHP innebærer " prøve , kaste og fange " metoden. Først , du "prøve" å utføre en funksjon eller en blokk med kode . Hvis denne koden mislykkes, "kaste" unntaket til et behandlingsprogram , som " fanger " det og hindrer websiden fra å vise uønskede resultater . Instruksjoner
en
Åpne HTML -fil. Sett markøren der du ønsker å håndtere et mulig unntak
2
Skriv inn følgende kode : .
Prøve {
$ conn = mysql_connect ( $ DBHOST , $ dbUsername , $ DBPASS ) ;
dette setter opp forsøket på å utføre en handling , i dette tilfellet , å etablere en tilkobling til en MySQL database. Du kan også prøve å koble til andre databaser , for eksempel ved å bruke " odbc_connect ( ) "-funksjonen for å koble til en Microsoft Access database. Unntaket behandlingsprosess forblir den samme
3
Skriv inn følgende kode :
if ( $ DBH === false) { throw new Exception ( 1 ); } . else {
mysql_select_db ( $ dbnavn ) ;
$ query = mysql_query ( "SELECT * FROM tabell ");
if ( $ query === false) { kaste nytt unntak ( 2 ) ;}
}
først hvis setningen sjekker for å se om en PHP gjort en tilkobling til en database . Hvis ikke, kaster det et unntak , og passerer "1" som det unntak meldingen . Du kan endre denne verdien til noe mer forståelig. Hvis tilkoblingen er opprettet, prøver koden deretter å spørre et bord . Hvis det forsøket ikke lykkes, for eksempel fordi tabellen ikke finnes, kaster PHP et unntak og går "2" som unntak meldingen. Koden stenger så hvis setningen blokker og prøve blokken. Kaste ytterligere unntak der det er hensiktsmessig basert på hva slags interaksjoner koden din gjør med databasen
4
Skriv inn følgende kode : .
Catch ( Exception $ e ) {
< p> if ( $ e - > GetMessage ( ) == 1 ) {
echo "Kan ikke logge på databasen. ";
} elseif ( $ e - > GetMessage ( ) == 2 ) {
echo "Kan ikke kjøre spørringen. ";
}
}
Når PHP kaster en database unntak , utfører catch-blokken . Disse linjene bruke $ e unntaket variabel og trekke meldingen sendes til det . Hvis PHP ikke kunne koble til en database , er den første feilmeldingen skrives ut på websiden. Hvis det ikke kunne søke i databasen , er den andre meldingen skrives . Skriv ytterligere unntak innenfor catch-blokken for andre mulige feil .
5
Lagre HTML-filen og laste den opp til webserveren .