PHP Variabler befintliga inte och blanketter

Genom , torsdag 31 juli, 2008 10:36

Jag kom över något jag inte var medveten om idag som är mycket händig .... den felkontroll operatören "@" A i PHP .

Så för en bakgrund till hur jag kom över detta problem, i mina webbapplikationer jag tenderar att använda samma formulär för att infoga data i en mySQL databas. Om jag har en någon form av 'id' nummer in via en GET variabel då som utlöser en last från databasen, annars jag lägger till nya uppgifter.

I min formelement jag in ofta värdet av formulärfält till något i stil med <? = $ Data ['fieldValue'];?> detta fungerar bra vid lastning data men när jag sätter in nya uppgifter jag får formuläret fyllas i så följande (notera på min inloggning eller när jag testar jag har felrapportering satt till E_ALL så jag kan kontrollera att allting fungerar korrekt):

Notice: Undefined variable: data i / home / public_html / dataEdit.php on line 69

Så vad jag så småningom hamnade gjorde var att skriva längre (fulare) kod som sagt, <? if (isset ($ data ['fieldValue'])) {echo $ data ['fieldValue'];}?.> Inte riktigt bra

Sedan snubblade jag över felkontroll operatören i PHP, genom att placera ett "@" symbolen innan en operatör (i stort sett allt som kan returnera ett resultat) ovan problemet är löst. Till exempel kan jag nu göra mitt för parametern value <= @ $ data ['fieldValue'];?>. Om variabeln inte är satt (det vill säga ett fel skulle genereras) då felet är undertryckt.

Obs: "@"-symbolen kan undertrycka stora fel och dölja det faktum att en del av din webbplats inte körs på rätt sätt, så var försiktig!

Lämna ett svar













Panorama Tema av Themocracy

6 besökare online nu
5 gäster, 1 bots, 0 medlemmar
Max besökare idag: 15 kl 00:29 UTC
Denna månad: 19 på 19-08-2011 06:09 UTC
I år: 130 på 28-03-2011 22:40 UTC
Tiderna: 130 på 28-03-2011 10:40 UTC