Szerző Téma: PHP konfigurálás, php.ini  (Megtekintve 11256 alkalommal)

0 Felhasználó és 1 vendég van a témában

Nem elérhető Rimelek

  • Adminisztrátor
  • Őstag
  • *****
  • Hozzászólások: 9.031
  • Karma: +288
    • rimelek.hu
Re: PHP konfigurálás, php.ini
« Válasz #73 Dátum: 2011. április 06., 17:17:13 »
Hasznos volt ez a hozzászólás? 0
Attól, hogy nem veszel tudomást a hibáról, még létezik. És saját dolgod nehezíted meg, ha egyszer olyant hibázol, ahogy egy változó deklarációt rontasz el. Egy változónevet írsz el a 3ezer soros programban. És nem tudod mi a hiba. Majd pár órás keresgélés után hopp, megvan a változó, ahol $a helyett $b -t írtál. És rég meg lett volna a hiba, ha a notice hibákat megjeleníted. Nincs olyan, hogy felesleges sor, ha az egy hibát előz meg.

Egyébként:
Kód: PHP (brief)
  1. $select_abc = isset($_POST['select_abc']) ? $_POST['select_abc'] : '';
  2. switch($select_abc){
  3.         case 0;
  4.                 $_SESSION["select_abc"] = "ORDER BY user.vezetek_nev";
  5.         break;
  6.         case 1;
  7.                 $_SESSION["select_abc"] = "ORDER BY user.vezetek_nev DESC";
  8.         break;
  9.         case 2;
  10.                 $_SESSION["select_abc"] = "ORDER BY user.kereszt_nev";
  11.         break;
  12.         case 3;
  13.                 $_SESSION["select_abc"] = "ORDER BY user.kereszt_nev DESC";
  14.         break;
  15.         case 4;
  16.                 $_SESSION["select_abc"] = "ORDER BY user.teljes_nev";
  17.         break;
  18.         case 5;
  19.                 $_SESSION["select_abc"] = "ORDER BY user.teljes_nev DESC";
  20.         break;
  21.         default:
  22.                 $_SESSION["select_abc"] = "ORDER BY user.teljes_nev";
  23. }
vagy
Kód: PHP (brief)
  1. switch(@$_POST['select_abc']){
  2.         case 0;
  3.                 $_SESSION["select_abc"] = "ORDER BY user.vezetek_nev";
  4.         break;
  5.         case 1;
  6.                 $_SESSION["select_abc"] = "ORDER BY user.vezetek_nev DESC";
  7.         break;
  8.         case 2;
  9.                 $_SESSION["select_abc"] = "ORDER BY user.kereszt_nev";
  10.         break;
  11.         case 3;
  12.                 $_SESSION["select_abc"] = "ORDER BY user.kereszt_nev DESC";
  13.         break;
  14.         case 4;
  15.                 $_SESSION["select_abc"] = "ORDER BY user.teljes_nev";
  16.         break;
  17.         case 5;
  18.                 $_SESSION["select_abc"] = "ORDER BY user.teljes_nev DESC";
  19.         break;
  20.         default:
  21.                 $_SESSION["select_abc"] = "ORDER BY user.teljes_nev";
  22. }
De ha forrást akarsz rövidíteni akkor nem a hibaüzenete kezelésén kell spórolni.
Egyszerűen létezem, és lézengek a Földön,
mint idióta szellem, kinek kastélya a börtön.

Nem elérhető ThompsoN

  • Törzstag
  • **
  • Hozzászólások: 561
  • ThompsoN
  • Karma: +23
Re: PHP konfigurálás, php.ini
« Válasz #72 Dátum: 2011. április 06., 16:06:37 »
Hasznos volt ez a hozzászólás? 0
Feltételben megvizsgálod isset()-tel, ahogyan Tomi írta, és  feltétel teljesülése esetén futtatod a switch-et. Ellenkező esetben pedig végrehajtod a switch default részét.
ThompsoN

Nem elérhető Zordon

  • Törzstag
  • **
  • Hozzászólások: 437
  • Karma: +1
Re: PHP konfigurálás, php.ini
« Válasz #71 Dátum: 2011. április 06., 16:06:04 »
Hasznos volt ez a hozzászólás? 0
Megtaláltam!!!!  O0
Ez az eredeti:
error_reporting = E_ALL | E_STRICTÉs ez kellet nekem:
error_reporting = E_ALL & ~E_NOTICE
Ha bármi más működési hiba lép fel akkor azt jelzi de ha nincs értéke a változónak akkor azt nem!

Nem elérhető Zordon

  • Törzstag
  • **
  • Hozzászólások: 437
  • Karma: +1
Re: PHP konfigurálás, php.ini
« Válasz #70 Dátum: 2011. április 06., 15:55:13 »
Hasznos volt ez a hozzászólás? 0
nem kell ezt átállítani, így jó
Kód: PHP
  1. if (isset($_GET['valtozo'])) {}

Ezzel nincs is baj! de amikor egy switch(){} szerkezet van és a default: értéknek is megadsz valamit és hibát dob mert a switchnek megadott változó üres akkor itt nincs isset() max ha elé teszed de fölösleges sorokat meg nem kell írni!

Amúgy köszönöm! :)

Van a php.ini ben egy olyan beállítás ami ha üres a változó nem dob rolla hibát!
Notice: Undefined index: select_abc in C:\Program Files\EasyPHP-5.3.6.0\www\myface\login\search\mysql.php on line 3Ez a hiba kód erre utal:
switch($_POST["select_abc"]){
case 0;
$_SESSION["select_abc"] = "ORDER BY user.vezetek_nev";
break;
case 1;
$_SESSION["select_abc"] = "ORDER BY user.vezetek_nev DESC";
break;
case 2;
$_SESSION["select_abc"] = "ORDER BY user.kereszt_nev";
break;
case 3;
$_SESSION["select_abc"] = "ORDER BY user.kereszt_nev DESC";
break;
case 4;
$_SESSION["select_abc"] = "ORDER BY user.teljes_nev";
break;
case 5;
$_SESSION["select_abc"] = "ORDER BY user.teljes_nev DESC";
break;
default:
$_SESSION["select_abc"] = "ORDER BY user.teljes_nev";
}

Nos itt logikusan azért van default: hogy ha nincs vagy nem a megadott értétek akkor azt veszi ki!

Nem elérhető tomi6230i

  • Törzstag
  • **
  • Hozzászólások: 354
  • Karma: +12
Re: PHP konfigurálás, php.ini
« Válasz #69 Dátum: 2011. április 06., 15:01:24 »
Hasznos volt ez a hozzászólás? 0
nem kell ezt átállítani, így jó
Kód: PHP
  1. if (isset($_GET['valtozo'])) {}

Nem elérhető Zordon

  • Törzstag
  • **
  • Hozzászólások: 437
  • Karma: +1
Re: PHP konfigurálás, php.ini
« Válasz #68 Dátum: 2011. április 06., 14:49:23 »
Hasznos volt ez a hozzászólás? 0
Sziasztok!

Én abban kérném a segítségeteket hogy amikor egy adott változó nem kap értéket akkor a php hibát dob. Ezt tapasztaltam $_SESSION, $_POST stb...globális változóknál. Mert igazából a régi easyPHP-ba be volt állítva de az újba már nincs és teli vagyok hibákkal!!

Előre is köszönöm!  :)

Nem elérhető ThompsoN

  • Törzstag
  • **
  • Hozzászólások: 561
  • ThompsoN
  • Karma: +23
Re: PHP konfigurálás, php.ini
« Válasz #67 Dátum: 2010. augusztus 25., 21:40:10 »
Hasznos volt ez a hozzászólás? 0
Õő, tényleg. Szóval ez így akkor mégsem jó.:)
ThompsoN

Nem elérhető Rimelek

  • Adminisztrátor
  • Őstag
  • *****
  • Hozzászólások: 9.031
  • Karma: +288
    • rimelek.hu
Re: PHP konfigurálás, php.ini
« Válasz #66 Dátum: 2010. augusztus 25., 21:37:52 »
Hasznos volt ez a hozzászólás? 0
Attól még használható az ini_set. Gondolom az a cél, hogy más user ne akarjon akármit állítgatni. De tudtommal vagy mindent, vagy semmit. Csak függvényt lehet tiltani.
« Utoljára szerkesztve: 2010. augusztus 25., 21:55:45 írta Rimelek »
Egyszerűen létezem, és lézengek a Földön,
mint idióta szellem, kinek kastélya a börtön.

Nem elérhető ThompsoN

  • Törzstag
  • **
  • Hozzászólások: 561
  • ThompsoN
  • Karma: +23
Re: ini_set egyéb kérdés
« Válasz #65 Dátum: 2010. augusztus 25., 15:55:14 »
Hasznos volt ez a hozzászólás? 0
Hali.

Csinálj egy függvényt. Abban legyen egy tömb, amiben legyenek az engedélyezett beállítások. in_array-el pedig ellenőrzöd, hogy a függvény paraméterében megadott string benne van-e a tömbben. Ha igen, akkor pedig ini_set. Egyébként nem.

pl.
Kód: PHP
  1. function set_ini_settings($mit, $ertek)
  2. {
  3.         $engedelyezett = array('display_errors'); //Ide az kerül, amit engedélyzni akarsz
  4.        
  5.         if(in_array($mit, $engedelyezett)) //ini_set
  6.         {
  7.                 ini_set($mit, $ertek);
  8.         }
  9. }
  10.  
ThompsoN

Nem elérhető Robcsi

  • Felhasználó
  • Hozzászólások: 1
  • Karma: 0
ini_set egyéb kérdés
« Válasz #64 Dátum: 2010. augusztus 25., 15:30:23 »
Hasznos volt ez a hozzászólás? 0
Hellósztok :)
lenne egy nem általános kérdésem
ini_set-be hogy lehet megoldani, hogy csak bizonyos dolgokat ne engedje?
pl az ini_set('display_errors'...) menyjen
de mondjuk az ini_set('session.save_handler'..ne menyjen? :)
csak példa


valakinek van valami ötlete?

Nem elérhető klank

  • Tag
  • *
  • Hozzászólások: 238
  • Karma: +8
Re: PHP konfigurálás, php.ini
« Válasz #63 Dátum: 2010. május 09., 20:26:32 »
Hasznos volt ez a hozzászólás? 0
Működik. Hálám örökké üldözni fog főleg a copy/paste megoldásért.  :thankyou:
„Aki nem próbálja meg a lehetetlent, az a lehetségest sem fogja elérni soha.”  (Goethe)
„Sokat kell olvasnod ahhoz, hogy megtudd, milyen keveset tudsz.” (Lia-Csin)
„Bármit tanulsz, magadnak tanulod.” (Petronius)

Nem elérhető Rimelek

  • Adminisztrátor
  • Őstag
  • *****
  • Hozzászólások: 9.031
  • Karma: +288
    • rimelek.hu
Re: PHP konfigurálás, php.ini
« Válasz #62 Dátum: 2010. május 09., 20:16:03 »
Hasznos volt ez a hozzászólás? 0
Atw-n az ilyen függvényeket se nagyon használhatod. De ezt igen:

Kód: PHP
  1. /**
  2.  * Tömb elemeinek backslashelt vagy nem backslashelt verzióra állítása
  3.  *
  4.  * @param mixed $string array vagy string. Tömb esetén rekurzivan működik
  5.  * @param boolean $bool true, ha a felhasználói adatbeviteleket backslashelni akarjuk. Amúgy false
  6.  */
  7. function setSlashes(&$string,$bool=false)
  8. {
  9.         if (!is_array($string))
  10.         {
  11.                 if ($bool) {
  12.                         if (!get_magic_quotes_gpc())
  13.                         {
  14.                                 $string = addslashes($string);
  15.                         }
  16.                 }
  17.                 else
  18.                 {
  19.                         if (get_magic_quotes_gpc())
  20.                         {
  21.                                 $string = stripslashes($string);
  22.                         }
  23.                 }
  24.                 return;
  25.         }
  26.         foreach ($string as $key => &$str) {
  27.                 setSlashes($str, $bool);
  28.         }
  29. }
Még azelőtt hívd meg, hogy használnád valamelyik $_POST vagy $_GET változót.
Kód: PHP
  1. setSlashes($_POST,false);
vagy
Kód: PHP
  1. setSlashes($_POST,true);
Első paraméter egyértelmű. Második paraméter meg hogy akarod-e, hogy escapelve legyenek az idézőjelek. Figyelembe veszi a magic_quotes_gpc beállítást is. És nem escapel ha már automatikusan is volt escapelve. De csak egyszer hívd meg. Különben duplán is törli a \ -eket, amit nem biztos, hogy akarsz.
Egyszerűen létezem, és lézengek a Földön,
mint idióta szellem, kinek kastélya a börtön.

Nem elérhető klank

  • Tag
  • *
  • Hozzászólások: 238
  • Karma: +8
Re: PHP konfigurálás, php.ini
« Válasz #61 Dátum: 2010. május 09., 19:26:55 »
Hasznos volt ez a hozzászólás? 0
Visszaolvastam a magic_quotes-os üzeneteket, mert nekem is ilyen problémám akadt. Ingyenes tárhelyen (atw) ugye nem lehet hozzáférni a php.ini-hez, de a MAGIC_QUOTES be van kapcsolva és szeretném kikapcsolni. Próbáltam a
Kód: PHP
függvénnyel, de ugyanúgy backslash-elte az aposztrófokat. Mit lehet tenni ilyenkor?
„Aki nem próbálja meg a lehetetlent, az a lehetségest sem fogja elérni soha.”  (Goethe)
„Sokat kell olvasnod ahhoz, hogy megtudd, milyen keveset tudsz.” (Lia-Csin)
„Bármit tanulsz, magadnak tanulod.” (Petronius)

Elérhető Semmu

  • V.I.P. tag
  • Teljes tag
  • *****
  • Hozzászólások: 2.588
  • Akinek semmi sem tetszik :D
  • Karma: +21
    • [készülõben]
Re: PHP konfigurálás, php.ini
« Válasz #60 Dátum: 2009. június 24., 15:56:42 »
Hasznos volt ez a hozzászólás? 0
sztem egyszerűen csak kimenet van a header-ed előtt.



Nem elérhető Zordon

  • Törzstag
  • **
  • Hozzászólások: 437
  • Karma: +1
Re: PHP konfigurálás, php.ini
« Válasz #59 Dátum: 2009. június 24., 15:55:37 »
Hasznos volt ez a hozzászólás? 0
Sziasztok!

Az a bajom akadt hogy a apache azt modta hogy nem fogadja el a header() fvg-t ésszerintem a php.ini-be be lehet állitani
De találtam ini_set(); beállitást is
egy ilyet:
name: async_send, default:0
Nem lehet hogy át  lehet nevezni egy új értékre?

Előre  is köszönöm!