Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: error_reporting(E_ALL); i dziwne problemy
Forum PHP.pl > Forum > PHP
Malvegil100
Witam,

zaczalem sprawdzac strone pod katem najmniejszych błędów wiec włączyłem error reporting na:

  1. <?php
  2. ?>


I tu nagle szok co zobaczyłem. Sporo jakichś małych błędów typu:

  1. <?php
  2. [b]Notice[/b]:  Undefined  in [b]/virtual/d/e/xxx.pl/xxx/index.php[/b] on line [b]86
  3. [/b]
  4. [b]Notice[/b]:  Undefined  in [b]/virtual/d/e/xxx.ugu.pl/xxx/funkcje/strona_glowna.php[/b] on line [b]49
  5. ?>


Wypisałem odpowiednio według błędów:

Linia 86 w index.php:

  1. <?php
  2. $pokaz = $_GET['pokaz'];
  3. ?>


Linia 49 w strona_glowna.php:

  1. <?php
  2. $autor_artykulu = mysql_query ("SELECT username FROM users WHERE id=\"".$id_autora_artykulu1."\" DESC LIMIT 0, 5");
  3. ?>


Ślęczałem nad tym troche, szukałem w google.pl bo pewnie to częsty błąd jednakże nie znalazłem nic co by mi pomogło rozwiązać ten błąd.

Móglby ktos pomoc?

[/b]
bregovic
To pierwsze możesz rozwiązać tak:
  1. <?php
  2. $pokaz = isset($_GET['pokaz']) ? $_GET['pokaz'] : null;
  3. ?>

To drugi pewnie podobnie z $id_autora_artykulu1...
marcio
Eh.. nie przejmuj sie takimi bledami sam mam takich pelno ale nie zwracam na to uwagi i tak nie ma to nic wspolnego z funkcjonalnoscia
bregovic
"takie błędy" mogą prowadzić do obniżenia wydajności i bezpieczeństwa twojwej aplikacji, i zazwyczaj dowodzą braku zrozumienia działania PHP. Fakt, nie ma się czym przejmować tongue.gif
marcio
Cytat
bezpieczeństwa twojwej aplikacji, i zazwyczaj dowodzą braku zrozumienia działania PHP

Co do wydajnosci nie przesadzajmy jest to tylko e_notice z tekstem bledu musialoby ich byc 10k biggrin.gif

A co ma do tego bezpieczenstwo przewaznie blad e_notice do niczego nie sprowadza

Oczywiscie ze nie zawsze rozumie dzialanie php......
ucho
Myślałem że każdy woli na bieżąco usuwać wszystkie warningi bo lepsze to niż przegapić coś ważnego w kupie zupełnie nie ważnych i trywialnych do porprawienia drobiazgów.
phpion
Cytat(marcio @ 7.11.2008, 02:50:06 ) *
Eh.. nie przejmuj sie takimi bledami sam mam takich pelno ale nie zwracam na to uwagi i tak nie ma to nic wspolnego z funkcjonalnoscia

To, że twój kod pluje notice'ami nie świadczy dobrze o tobie jako o programiście. Dla mnie kod MUSI być pozbawiony JAKICHKOLWIEK błędów czy ostrzeżeń. W przeciwnym wypadku jest po prostu partactwem i niechlujstwem w jednym.
bogdan89
phpion bardzo dobrze to napisał winksmiley.jpg

Przeważnie takie ostrzeżenie to niezdefiniowana zmienna. Co więc szkodzi sprawdzić czy ta zmienna istnieje czy nie? To tylko instrukcja warunkowa, ostrzeżenia nie będzie.
markac
Ten kto twierdzi, że to nie jest poważny błąd, to niech spróbuje podstawić taką pustą zmienną do zapytania sql. Gratuluję poczucia humoru i oby wasze "aplikacje" pozostały tylko na lokalnych komputerach.
bogdan89
ale markac, bazy danych to tylko niewielka część problemu. Zauważ, że praktycznie każde działanie na pustej zmiennej jakoś mija się z logiką. Jeszcze jak jest pusta to pół biedy, ale jeśli w ogóle nie istnieje?

Aha... autor tematu już uzyskał odpowiedź na swoje pytanie, więc nie ma co drążyć dalej tego wątku winksmiley.jpg

Pozdrawiam winksmiley.jpg
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.