Jump to content
php.lv forumi

Recommended Posts

Posted

Sveiki!

 

Visus tekstus datubāzē glabāju ar addslashes($txt) un magic_quotes_gpc = Off. Uz visiem serveriem līdz šim pie teksta paņemšanas no db un echo, tas liekais slash pats pazūd, bet tagad ir production serveris uz kura tā nenotiek. Kas būtu jāpamaina, lai nerādītu slash pie echo? Nevēlos pie visiem echo tagad rakstīt klāt stripslashes(kaut arī palīdz). Ir kādi ieteikumi?

Posted (edited)

Nozīmē, ka uz tā servera magic_quotes_gpc = On. Taisi savu funkciju:

 

function my_addslashes($s){
  if (get_magic_quotes_gpc()) {
  return $s;
  } else {
  return addslashes($s);
  }
}

 

Un nomaini visās vietās, kur tika izmantots addslashes GET, POST, COOKIE parametriem.

 

Var arī katru reizi palaist funkciju, kas uztaisa stripslashes() visiem GET, POST, COOKIE, ja get_magic_quotes_gpc() == 1.

Edited by GedroX
Posted (edited)

ak jaa :)

add settings to a .htaccess file with 'php_flag' like this:

 

php_flag register_globals off

php_flag magic_quotes_gpc off

Edited by KAC
Posted (edited)

Pēc manām domām visām magic padarīšanām būtu jābūt izslēgtām pēc noklusējuma, bet nav... Problēma tāda, ka skripta izpildes laikā to nevar atslēgt, jo GPC jau tiek apstrādāti pirms visiem taviem skriptiem... =(

 

OLD:To:KAC

Nestrādās - citēju sevi: "skripta izpildes laikā to nevar atslēgt, jo GPC jau tiek apstrādāti pirms visiem taviem skriptiem"

 

NEW:To:KAC

Tagad gan strādās =)

Edited by GedroX
Posted

Mazliet nesapratos ar hostingotājiem, kā izrādās. Joks bija tāds, ka tiešām bija magic_quotes pie vainas, kā arī man sākumā likās. Vienkārši, kad viņiem aizsūtīja mailu, ka vajag "magic_quotes_gpc = off", viņi atbildēja, ka "ir jau". No tā es sapratu, ka visu laiku ir bijis Off, bet izrādās, ka viņi tikai tad uzlika uz Off. Nu tad varēja jau atbildēt, ka "tagad ir Off, nomainījām konfigu". btw, deac. Es uzreiz jau sāku meklēt citus iemeslus un apkārtceļus, bet izrādās, ka viss jau ir kārtībā.

 

Paldies tiem, kas centās palīdzēt.

×
×
  • Create New...