[PHP] $_GET non preleva variabile nell’URL

paolofiorito

Nuovo Utente
26 Mar 2019
4
0
1
Mi scuso in anticipo per i termini impropri ma sono alle prime armi.
Ho creato una pagina che passa nell’URL la geolocalizzazione in due variabili (var1 e var2).
Quando tento di raccogliere le variabili con $_GET, in una pagina PHP per scriverle in un file “visite.txt” non vengono scritte e si verifica un
Undefined index (registrato su error_log.txt).
Tutte le altre vengono regolarmente scritte sul file txt compreso l’intero indirizzo URL che evidenzia le due variabili valorizzate dopo il ? e separate dalla &.
Ho finito i neuroni senza riuscire a capire... qualcuno può aiutarmi?
Questo è il codice della pagina PHP:
PHP:
<?php
$longi = $_GET["var1"];
$latid = $_GET["var2"];
$ip = $_SERVER['REMOTE_ADDR']?:($_SERVER['HTTP_X_FORWARDED_FOR']?:$_SERVER['HTTP_CLIENT_IP']);
$hostname = gethostbyaddr($ip );
$referer = $_SERVER['HTTP_REFERER'];
$browser = $_SERVER['HTTP_USER_AGENT'];
ini_set( 'date.timezone', 'Europe/Rome' );
$fp = fopen("visite.txt","a-");
fwrite($fp, "***");
fwrite($fp, $latid);
fwrite($fp, "*****");
fwrite($fp, $longi);
fwrite($fp, $ip );
fwrite($fp, " ");
fwrite($fp, $hostname );
fwrite($fp, " ");
fwrite($fp, $referer );
fwrite($fp, " ");
fwrite($fp, $browser );
fwrite($fp, $_GET['pagename']);
fwrite($fp, " ");
fwrite($fp, date('d M Y'));
fwrite($fp, " ");
fwrite($fp, date("H:i:s"));
fwrite($fp, "\r\n");
fclose($fp);
?>
 
Ultima modifica di un moderatore:

Phelps

Utente Attivo
17 Dic 2018
50
0
6
Racchiudi il tuo codice in questi due php /php con parentesi [] altrimenti sul forum si capisce poco
Per prendere la variabile get significa che nella barra delle url tu hai questo:
http://www.sito.it?var1=12345&var2=12345
se non hai questo non potrai mai prendere il valore di get:
Ad ogni modo da dove vuoi prenderla fai:

PHP:
if(isset($_GET['var1'] && isset($_GET['var2']))){
$var1 = $_GET['var1'];
$var2 = $_GET['var2']
}
 

Max 1

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
29 Feb 2012
4.449
338
83
@paolofiorito
Da regolamento del forum, come tutti noi sei tenuto ad usare il tag
code-gif.6007
o il tag
php-png.6009
per il PHP, quando posti del codice, oppure la funzione codice dalla barra degli strumenti
box-inserisci-2-png-jpg.6008

Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
Grazie
Per questa volta te lo sistemo io ma mi raccomando per il futuro
 

paolofiorito

Nuovo Utente
26 Mar 2019
4
0
1
@paolofiorito
Da regolamento del forum, come tutti noi sei tenuto ad usare il tag
code-gif.6007
o il tag
php-png.6009
per il PHP, quando posti del codice, oppure la funzione codice dalla barra degli strumenti
box-inserisci-2-png-jpg.6008

Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
Grazie
Per questa volta te lo sistemo io ma mi raccomando per il futuro
Grazie e scusate per non aver rispettato le regole. Sto provando il codice è vi aggiorno se riesco a risolvere.
 

paolofiorito

Nuovo Utente
26 Mar 2019
4
0
1
Buongorno. Ho apportato alcune modifiche come suggerito ma il risultato non cambia.
Posto nuovamente il codice php modificato:
PHP:
<?php

    $var1 = "";
    $var2 = "";
    
if(isset($_GET['var1']) && isset($_GET['var2'])){
    $var1 = $_GET['var1'];
    $var2 = $_GET['var2'];
}else {
  '';
}
$ip = $_SERVER['REMOTE_ADDR']?:($_SERVER['HTTP_X_FORWARDED_FOR']?:$_SERVER['HTTP_CLIENT_IP']);
$hostname = gethostbyaddr($ip );
$referer = $_SERVER['HTTP_REFERER'];
$browser = $_SERVER['HTTP_USER_AGENT'];
ini_set( 'date.timezone', 'Europe/Rome' );
$fp = fopen("visite.txt","a-");
fwrite($fp, "***************************************");
fwrite($fp, " Latitudine: ");
fwrite($fp, $var1);
fwrite($fp, " Longitudine: ");
fwrite($fp, $var2);
fwrite($fp, " Indirizzo IP: ");
fwrite($fp, $ip );
fwrite($fp, " Host:  ");
fwrite($fp, $hostname );
fwrite($fp, " URL di provenienza: ");
fwrite($fp, $referer );
fwrite($fp, " Browser: ");
fwrite($fp, $browser );
fwrite($fp, " ");
fwrite($fp, date('d M Y'));
fwrite($fp, " ");
fwrite($fp, date("H:i:s"));
fwrite($fp, "\r\n");
fclose($fp);
?>

vsitando la pagina e premendo il risultato che ottengo sul fle visite.txt é il seguente:
Codice:
*************************************** Latitudine:  Longitudine:  Indirizzo IP: XXX.XXX.XX.XXX Host:  net-XXX-XXX-XX-XXX.cust.dsl.teletu.it URL di provenienza: https://www.miosito.it/test/index.htm?var1=99.5157376&var2=99.9364864 Browser: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36 01 Apr 2019 15:51

come si vede dall'output, l'URL di provenienza contiene correttamente le variabili "var1" e "var2" che però GET non preleva.
Non risultano errori PHP (ho anche dichiarato le variabili "var1" e "var2" all'inizio per evitare ogni errore).

Ho pensato di raccogliere i valori gestendo con PHP la stringa dell'URL di provenienza ma prima di fare questo volevo capire come mai non riesco ad utilizzare GET.
Esiste la possibilità che qualche impostazione del server limiti GET?

Spero nell'aiuto di qualcuno. Grazie.
 
Discussioni simili
Autore Titolo Forum Risposte Data
L tipo boolean non funzionante su mariadb (mysql). E codice php 7.4. PHP 0
P Data scraping in PHP non funziona PHP 4
L php mysql non salva solo id PHP 21
A php metodo post jquery non da mai errore jQuery 4
M Guestbook - non funziona dopo upgrade di PHP PHP 5
Valerio93 [PHP] non capisco come mai mi da la data NULL PHP 3
S [PHP] non prende la query PHP 0
WebmasterFioriniAndrea [PHP] Problema che non mi fa vedere niente PHP 2
Leshabituelles Non riesco ad aggiornare PHP PHP 0
Max 1 [PHP] Script che funziona in locale e non online PHP 16
R [PHP] pagina inclusa che non viene visualizzata PHP 2
Punix [PHP] query non valida PHP 1
M [PHP] Visualizzare un array partendo dal numero 1 e non 0 PHP 5
gandalf1959 [PHP] Inserimento di più righe non funziona come mi aspetto... PHP 2
M [PHP] Query UPDATE che non mi aggiorna campi seconda tabella PHP 3
M [PHP] header (location..) non funzionante dopo login PHP 3
B [PHP] Valore variabile non riconosciuto PHP 1
M [PHP] Selezionare immagini directory non presenti in db PHP 11
R mojave php non interpretato PHP 11
M Non corretta lettura del file php.ini della sezione CLI PHP 3
P [PHP] Input Type="date" non va correttamente con Apple PHP 2
Cosina [PHP] Preservare i campi del form solo se l'invio non ha successo PHP 5
S [PHP] Selezionare i campi non in comune con le altre colonne della tabella PHP 4
Monital [PHP] Insert into non inserisce tutti i dati PHP 1
T interpretare uno script php non fatto da me... PHP 3
M PHP - Funzione non e scrive il risultato PHP 3
L [PHP] case then e campo non riconosciuto PHP 0
T [PHP] aiuto....Fatal error: Uncaught Error:non riesco a capire PHP 1
T [PHP] ...Parse error che non c'è... PHP 7
M [PHP] Non si connette PHP 7
W [PHP] Non esegue il parsing su un dato sito e negli altri si... PHP 0
A Php mail non invia due mail di seguito PHP 3
O PHP 5.6 non riesco ad abilitare TSL 1.2 PHP 1
L [PHP] Nuovo server, query non funzionano PHP 3
M [PHP] Escludere campi non valorizzati PHP 22
Tommy03 Perchè non si apre una pagina PHP PHP 4
F [PHP] if(isset($_POST['Invia'])) non mi riconosce le variabili PHP 3
D [PHP] Update non trasferisce condizione where PHP 1
V Creare tabella mysql con php non funziona PHP 1
V [PHP] Perché non funziona ? PHP 1
V [PHP] Variabile modificata in un if non mantiene quel valore PHP 5
alessandra86 [PHP] Elementi di un array non visualizzabili PHP 7
C [PHP] non trovo l'errore? PHP 3
A [PHP] Non prende variabile $provincia ma tutte le altre si PHP 6
M [css][php] codice php esterno non vede il css PHP 6
M [PHP] Non calcola l'ultimo record inserito PHP 13
M [PHP] Problema IF non riconosciuta PHP 2
webimage [PHP] Non inserimento in tabella PHP 19
D [PHP] in una determinata fascia oraria non visualzzare campo PHP 5
T PHP: aggiunta a query che non so fare... PHP 2

Discussioni simili