PDA

View Full Version : [PHP] variabili esterne ad una classe


ianaz
14-07-2006, 06:50
<?php
include "../config.php";
class users {
....



nel config.php c'é

$ip = $_SERVER['SERVER_ADDR'];


e ho bisogno la variabile $ip nella classe users....come estrarlo?
Ho provato a fare echo $ip; ma all'interno della classe users non vede la variabile
Al momento l'ho ricreata al suo interno (nella classe: $ip = $_SERVER['SERVER_ADDR'];) però poi mano a mano che il codice diventa grande sarebbe utile risparmiare righe.



grazie ;)

VICIUS
14-07-2006, 07:15
All'interno delle funzioni in cui ti serve la variabile $ip devi dare global $ip; prima di usarla. Dopo quella istruzione php dovrebbe vederla tranquillamente.

ciao ;)

max246
14-07-2006, 07:30
altrimenti nel costruttore della classe metti che gli da $_SERVER ... alla variabile ( ovviamente restera sempre nella classe, se vorrai ritornare il valore dovrai fare un getip ... )

ianaz
14-07-2006, 08:04
All'interno delle funzioni in cui ti serve la variabile $ip devi dare global $ip; prima di usarla. Dopo quella istruzione php dovrebbe vederla tranquillamente.

ciao ;)
Grazie mille :D



@Max246: non ho capito cosa intendevi...

ianaz
14-07-2006, 08:10
altra domanda già che ci siamo:
c'é una funzione che ti conta le righe di codice PHP in una pagina?

andbin
14-07-2006, 08:13
c'é una funzione che ti conta le righe di codice PHP in una pagina?Non mi sembra che ci sia .... comunque ti basta aprire il file con la fopen e leggere e contare le righe.

ianaz
14-07-2006, 08:21
okyz, grazie a tutti...

max246
14-07-2006, 08:39
ahah io dicevo questo:

$var->SetIp($_SERVER[..]);
echo $var->GetIp();

capisci? :mc:

ianaz
14-07-2006, 09:06
E dato che non vorrei aprire un nuovo thread per una cavolata:

$pag_provenienza = $_SERVER['HTTP_REFERER'];

non funziona...non da niente come valore eppure é giusto...





'HTTP_REFERER'
The address of the page (if any) which referred the user agent to the current page. This is set by the user agent. Not all user agents will set this, and some provide the ability to modify HTTP_REFERER as a feature. In short, it cannot really be trusted.


utilizzo internet explorer...dovrebbe proprio andare

andbin
14-07-2006, 09:10
$pag_provenienza = $_SERVER['HTTP_REFERER'];

non funziona...non da niente come valore eppure é giusto...Il manuale dice:
'HTTP_REFERER'
The address of the page (if any) which referred the user agent to the current page. This is set by the user agent. Not all user agents will set this, and some provide the ability to modify HTTP_REFERER as a feature. In short, it cannot really be trusted.


EDIT: oops, anche tu hai trovato l'informazione .... comunque significa semplicemente che devi prima testare (con isset) se la variabile esiste.

ianaz
14-07-2006, 09:18
il codice é:

if(isset($_SERVER['HTTP_REFERER']))
{
$pag_provenienza = $_SERVER['HTTP_REFERER'];
}
else
{
$pag_provenienza = NULL;
}


anche a provenire da una pagina lo setta come NULL...e quindi quando dopo il login devo reindirizzare alla pagina precedente lo invia a ''

Mi dice: UNDEFINED INDEX: HTTP_REFERER

ianaz
14-07-2006, 10:45
Mi dice: UNDEFINED INDEX: HTTP_REFERER
uppeti ^^

VICIUS
14-07-2006, 11:16
altra domanda già che ci siamo:
c'é una funzione che ti conta le righe di codice PHP in una pagina?
Con la costante __LINE__ puoi avere il numero di riga in cui ti trovi. Mettilo nell'ultima e hai il numero di righe del file php.

ciao ;)

ianaz
14-07-2006, 12:03
Con la costante __LINE__ puoi avere il numero di riga in cui ti trovi. Mettilo nell'ultima e hai il numero di righe del file php.

ciao ;)
Gracias :D

max246
14-07-2006, 12:14
prova a guardare qualche script gia fatto e vedi cosa sbagli :)