 |
Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Comunitatea PHP Romania
|
| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
iophp
Data înscrierii: 14/Sep/2004
Mesaje: 1
Locație: http:\\alsja.ro
|
| Trimis: Mar Sep 14, 2004 2:51 am Titlul subiectului: variabile nedefinite. AJUTOR!!! |
|
|
:cry:Salut!!!
Am rulat pe serverul meu cateva scripturi si
toate imi dau aceleasi erori.Spun ca variabilele
nu sunt definite...
Ce pot face???
(De exemplu am incercat sa trimit datele de la un formular
la un script PHP si mi-a dat urmatoarea eroare:
<<Notice: Undefined variable: message in C:\Program Files\Abyss Web Server\htdocs\sendmail.php3
on line 3>>
Variabila "message" este un camp al formularului din care
vreau sa trimit datele la scriptul sendmail.php3
)
Va rog mult lamuriti-ma si pe mine! |
|
| Sus |
|
stealth
Data înscrierii: 21/Iun/2004
Mesaje: 304
Locație: Timisoara
|
| Trimis: Mar Sep 14, 2004 5:03 am Titlul subiectului: |
|
|
| foloseste $_POST['nume_camp'] sau $_GET['nume_camp'] |
|
| Sus |
|
ovi2ut
Data înscrierii: 13/Sep/2002
Mesaje: 166
Locație: Middle of Nowhere
|
| Trimis: Mar Sep 14, 2004 9:03 am Titlul subiectului: |
|
|
Ce primesti tu nu sunt erori, sunt notice.
Astea apar daca folosesti variabile care nu sunt initializate. |
|
| Sus |
|
kokosanu
Data înscrierii: 16/Mai/2004
Mesaje: 59
Locație: Cluj-Napoca
|
| Trimis: Mar Sep 14, 2004 9:12 am Titlul subiectului: |
|
|
trebuie sa ai in php.ini o linie care incepe cu:
error_reporting = ..
de acolo scoate (nu sterge) E_NOTICE. citind cateva linii mai sus afli cum. |
|
| Sus |
|
arond
Data înscrierii: 11/Mar/2004
Mesaje: 580
Locație: 127.0.0.1
|
| Trimis: Mar Sep 14, 2004 12:52 pm Titlul subiectului: |
|
|
kokosanu a scris: trebuie sa ai in php.ini o linie care incepe cu:
error_reporting = ..
de acolo scoate (nu sterge) E_NOTICE. citind cateva linii mai sus afli cum.
Asta e abordarea simpla (si gresita, dupa mintea mea). In timpul dezvoltarii unui script e bine sa ai notice-urile la locul lor, uneori iti dau hint-uri pretioase despre ce si cum (cu alte cuvinte, e bine sa ai error_reporting = E_ALL).
Acel notice este rezultatul faptului ca folosesti variabile neinitializate, ceea ce poate prezenta, in unele cazuri, riscuri de securitate.
Solutia este ca fiecare variabila pe care o folosesti sa fie initializata inainte de folosire ($xyz = null; de exemplu).
Numa' bune. |
|
| Sus |
|
kokosanu
Data înscrierii: 16/Mai/2004
Mesaje: 59
Locație: Cluj-Napoca
|
| Trimis: Mar Sep 14, 2004 4:46 pm Titlul subiectului: |
|
|
| si care sunt riscurile de securitate in chestia asta, explica-mi si mie, cum stii in ce sa faci push, daca nu-ti da eroare (notice)? |
|
| Sus |
|
arond
Data înscrierii: 11/Mar/2004
Mesaje: 580
Locație: 127.0.0.1
|
| Trimis: Mar Sep 14, 2004 6:13 pm Titlul subiectului: |
|
|
kokosanu a scris: si care sunt riscurile de securitate in chestia asta, explica-mi si mie, cum stii in ce sa faci push, daca nu-ti da eroare (notice)?
NOTICE-ul n-are legatura cu riscurile de securitate. Variabilele folosite fara a fi initializate, da (in cazul register_globals=On, si, cu ceva chin, probabil ca se pot imagina si situatii in care e periculos si cu register_globals=Off).
Chestia cu NOTICE-ul e o chestiune de stil, pana la urma. Pe unde am lucrat PHP mi s-a cerut sa nu existe nici un fel de probleme cu scripturile avand error_reporting=E_ALL.
Cu alte cuvinte, faza de dezvoltare (dupa mintea mea) trebuie facuta cu error_reporting=E_ALL, deployment-ul cu error_reporting minimal.
Numa' bune. |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |
|