 |
Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Comunitatea PHP Romania
|
| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
mihai13
Data înscrierii: 30/Dec/2003
Mesaje: 8
|
| Trimis: Mie Ian 07, 2004 8:09 pm Titlul subiectului: register_globals Off, $_POST, $_GET |
|
|
salut,
am facut o aplicatie php+mysql, acasa mergea si bineinteles cand am pus-o pe un server nu a mai functionat.
am inteles greseala venea de la register_globals, care erau On la mine. le-am schimbat in Off si a trebuit sa fac modificari; am adaugat:
if ($_POST['id_domeniu'] == null)
{
$id_domeniu = $_GET['id_domeniu'];
}
else
{
$id_domeniu = $_POST['id_domeniu'];
}
sa fac sa functioneze de exemplu
$sql_query = "SELECT * ..... <tabel>.id_domeniu = '$id_domeniu' LIMIT $limitvalue, $limit";
echo "<a href =\"$PHP_SELF?page=$pageprev&id_domeniu=$id_domeniu\">Pagina precedenta</a> ";
sunt incepator si de aceea nu sunt sigur daca aceasta este calea cea mai buna, adica unde aveam $<nume variabila> trebuie sa inlocuiesc cu $_POST<nume variabila> sau cu $_GET<nume variabila> , nu ?
multumesc,
mihai |
|
| Sus |
|
liviurad
Data înscrierii: 12/Sep/2003
Mesaje: 12
Locație: buc
|
| Trimis: Joi Ian 08, 2004 2:10 pm Titlul subiectului: |
|
|
Da.
Shi la test cred ca e mai fine sa foloseshti functia empty($_POST['var']) in loc de $_POST['var']==null, care da 1 daca variabila "E GOALA" |
|
| Sus |
|
luciansabo
Data înscrierii: 04/Ian/2004
Mesaje: 49
|
| Trimis: Joi Ian 08, 2004 10:14 pm Titlul subiectului: |
|
|
null nu inseamna neaparat un sir vid, ci inseamna ca variabila cu pricina nu a fost setata (isset($var)==false), sau a fost "desetata" (unset($var==true). Se pare ca daca $_POST["domeniu"] e un sir vid, se considera null.
Scriptul dat functioneaza si cu ==null.
Observ ca scriptul preia prin GET daca nu a fost trimis prin POST.
Pentru asta exista $_REQUEST["id_domeniu"] (>PHP v. 4.1) care preia ce a fost trimis fie prin POST fie prin GET sau COOKIE. |
|
| Sus |
|
iugin
Data înscrierii: 22/Mai/2003
Mesaje: 82
Locație: Oradea
|
| Trimis: Vin Ian 09, 2004 5:10 pm Titlul subiectului: |
|
|
Cod:
function register_globals( $order = 'EGPCS' )
{
$order = strtoupper('EGPCS');
$sg_xref = array(
'E' => '_ENV'
,'G' => '_GET'
,'P' => '_POST'
,'C' => '_COOKIE'
,'S' => '_SERVER'
);
$sga = explode('|', chunk_split($order, 1, '|'));
for($i=0, $j=count($sga); $i < $j; $i++) {
if (array_key_exists($sga[$i], $sg_xref) ) {
$sg = $sg_xref[substr($order, $i, 1)];
//can't use $$sg here because PHP does not treat the variable
variable as super global
if (!empty($GLOBALS[$sg]) && is_array($GLOBALS[$sg])) {
//can't use extract here becuase itwould extract to the function
context, not global
foreach($GLOBALS[$sg] as $key =>$value) {
global $$key;
$$key = $value;
}
}
}
}
}
Si eu am patit la fel si am zis ca nu se paote sa rescriu tot codul, as ca mam pus pe citite si am gasit chestia asta. |
|
| 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 |
|
| |
|