Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc
Comunitatea PHP Romania
 

register_globals='OFF' sau register_globals='ON' ;
Vezi mesajul original

 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> MySQL
Subiectul anterior :: Subiectul următor  
Autor Mesaj
UserMan



Data înscrierii: 03/Noi/2003
Mesaje: 5

Trimis: Mar Mar 16, 2004 2:09 am    Titlul subiectului: register_globals='OFF' sau register_globals='ON' ;  

Eu am facut cateva scripturi, si am instalat php.ini default, deci register_globals='OFF';, am pus pe un server, al carui ini nu o cunosc, e free, dar de ce la mine in pc merge si pe serverul free NU ? Am instalat php 4.3.3, default, apache si mysql pe platforma windows 2000 prof., logic ar fi, ca o restrictie in OFF, sa permita cu php.ini setat in ON sa functioneze. Cred eu, restrictia este doar o particularizare. Nu ma credeti ridicol, incerc si eu sa gandesc logic, ca doar e vb de pc-uri. Ce ar trebui sa fac sa functioneze ?
Sus  
cristi



Data înscrierii: 26/Mai/2002
Mesaje: 270
Locație: Timisoara

Trimis: Mar Mar 16, 2004 8:54 am    Titlul subiectului:  

Incearca sa dai un
an style="color: #000000"><?php phpinfo()  pe server sa vezi ce iti afiseaza.

Daca e cum zici tu atunci s-ar putea sa fie de la versiunea de PHP. Folosesti $HTTP_POST_VARS["variabila"] sau $_POST["variabila"] ?
Sus  
arond



Data înscrierii: 11/Mar/2004
Mesaje: 580
Locație: 127.0.0.1

Trimis: Mar Mar 16, 2004 7:41 pm    Titlul subiectului:  

Problema poate sa se traga de la o mie de alte lucruri.

Daca ne spui exact ce se intampla, poate te ajutam.... altfel e greu.

Acum, register_globals.

Daca register_globals e ON atunci toate elementele din POST, GET si COOKIE sunt inregistrate ca variabile globale. Mai concret, un acces de genul: index.php?dummy=1 va genera o variabila globala $dummy cu valoare 1.

Daca e OFF, asta nu se intampla... si pentru a accesa elementele din POST, GET sau COOKIE poti folosi fie variabilele globale $HTTP_POST_VARS, $HTTP_GET_VARS, $HTTP_COOKIE_VARS fie variantele autoglobale (autoglobal = nu mai e nevoie sa le declari ca globale in functii) $_POST, $_GET, $_COOKIE.

Exemplificam:

Cod: <?php
echo "Dummy global: $dummy";
echo '<br/>';
echo "Dummy GET: $_GET[dummy]";
?>

Accesezi pagina cu: index.php?dummy=1

Daca ai register_globals ON, rezultatul va fi:

Dummy global: 1
Dummy GET: 1

Daca ai register_globals OFF, rezultatul va fi:

Dummy global:
Dummy GET: 1
cu un notice in prima linie (pentru ca $dummy nu e definit).
Sus  
UserMan



Data înscrierii: 03/Noi/2003
Mesaje: 5

Trimis: Mie Mar 17, 2004 11:22 am    Titlul subiectului: Detalii in full  

Mesaj retras ...
Sus  
Emil



Data înscrierii: 16/Noi/2003
Mesaje: 301
Locație: echo $REMOTE_ADDR

Trimis: Joi Mar 18, 2004 8:50 am    Titlul subiectului:  

daca ti-ai facut scripturile "domestic" cu register_globals OFF vor functiona oriunde , invers insa nu se aplica .
Inainte de a pune intrebarea "de ce nu merge" asigura-te ca ai incercat sa faci putin debugging pe scriptul tau sa vezi unde e problema . In acest prietenii tai vor fi functiile print_r($variabila) [sau array sau object] si vardump($variabila) sau pur si simplu echo pentru a vedea ce valori iau anumite variabile .
Sus  
UserMan



Data înscrierii: 03/Noi/2003
Mesaje: 5

Trimis: Vin Mar 19, 2004 1:09 pm    Titlul subiectului: Am rezolvat problema !!!  

Mesaj retras ...

---------------------------------
Multumesc pentru indicatii.
Sus  
arond



Data înscrierii: 11/Mar/2004
Mesaje: 580
Locație: 127.0.0.1

Trimis: Vin Mar 19, 2004 1:22 pm    Titlul subiectului:  

Nu e vorba de variabila $link. Aia e diferita (in sensul ca zace altundeva in memorie :D) la fiecare acces pagina.

E vorba de parametrii pe care ii pasezi functiei mysql_connect(), si asta e normal sa fie diferiti... pentru ca iti spun cum se numeste baza de date, ce nume de user sa fie folosita la deschiderea conexiunii, etc..

Nu cred ca era normal sa te astepti sa fie la fel pe fiecare server.

Iar in ceea ce priveste 'localhost' asta e un nume dat calculatorului pe care ruleaza script-ul/whatever. Cu alte cuvinte, localhost la mine pe calculator este calculatorul meu, la tine pe calculator e calculatorul tau iar la streamingflash.com este calculatorul pe care ruleaza serverul de Web.

A, si inca ceva... 'root' nu are ce cauta in fraza aia :).. e vorba de 'host' care inseamna de fapt adresa IP a unei masini.
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  
 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> MySQL
Pagina 1 din 1


Powered by phpBB 2.0.22 © 2001, 2002 phpBB Group
Varianta în limba română: Romanian phpBB online community