|
|
|
|
Strumenti |
17-05-2019, 12:54 | #1 |
Member
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
|
[PHP] Notice: Undefined index
Ciao a tutti, sto seguendo un corso online ma non riesco ad uscirne.. mi esce questo errore:
Notice: Undefined index: city in C:\xampp\htdocs\Weather\index.php on line 3 Codice:
<?php if ($_GET['city']) { $forecastPage = file_get_contents("https://www.weather-forecast.com/locations/Milan/forecasts/latest"); echo $forecastPage; } ?> <html lang="it"> <head> <!-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <!-- Bootstrap CSS --> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous"> <title>Weather Screper</title> <style type="text/css"> html { background: url(background.jpg) no-repeat center center fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; } body { background:none; } .conteiner{ text-align: center; margin-top:280px; color:white; text-shadow: 2px 2px 4px black; } .form-control{ width:500px; text-align: center; display: inline-block; } </style> </head> <body> <div class="conteiner"> <h1>Che tempo fa?</h1> <form> <fieldset class="form-group-"> <label for="city">Inserisci il nome della città</label><br> <input type="text" class="form-control" name="city" id="city" placeholder="inserisci la città"> </fieldset><br> <button type="submit" class="btn btn-primary">Invia</button> </form> <!-- Optional JavaScript --> <!-- jQuery first, then Popper.js, then Bootstrap JS --> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script> </body> </html> |
18-05-2019, 19:15 | #2 |
Member
Iscritto dal: Feb 2006
Messaggi: 134
|
Se la variabile di indice 'city' non è definita in GET è ovvio che ti venga segnalato l'errore. Non so che corso sia, ma se il tuo codice è uguale c'è qualcosa che non va.
Comunque, per verificare se una variabile esiste vedi questo: https://www.php.net/manual/en/reserv...iables.get.php e cerca un qualsiasi esempio di utilizzo della funzione 'isset' sull'array GET in PHP. |
18-05-2019, 23:35 | #3 | |
Member
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
|
Quote:
|
|
19-05-2019, 10:01 | #4 | |
Member
Iscritto dal: Feb 2006
Messaggi: 134
|
Quote:
Codice:
<form> ... <button type="submit" class="btn btn-primary">Invia</button> </form> |
|
19-05-2019, 14:13 | #5 |
Member
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
|
|
19-05-2019, 19:00 | #6 |
Member
Iscritto dal: Feb 2006
Messaggi: 134
|
|
19-05-2019, 20:42 | #7 | |||
Member
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
|
Quote:
Ora mi indica Quote:
extension=php_openssl.dll L'avevo già fatto ma il problema rimane Modifica: e se aggiungessi la "s" in http mi darebbe un errore aggiuntivo: Quote:
Ultima modifica di eresseie90 : 19-05-2019 alle 20:51. Motivo: Aggiunta |
|||
20-05-2019, 07:47 | #8 | |
Senior Member
Iscritto dal: Apr 2005
Messaggi: 2993
|
Quote:
Dopo aver attivato il modulo php_openss.dll hai riavviato il server apache? hai fatto un phpinfo() per verificare che effettivamente il modulo si sia caricato? I log di apache dicono qualcosa in merito? |
|
20-05-2019, 11:17 | #9 | ||
Member
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
|
Quote:
nei file log non risulta niente di strano a parte l'errore che ho descritto nel messaggio precedente Quote:
ps: la pagina è composta solo dal codice che ho messo all'inizio del topic Ultima modifica di eresseie90 : 20-05-2019 alle 11:21. |
||
20-05-2019, 12:31 | #10 | |
Senior Member
Iscritto dal: Apr 2005
Messaggi: 2993
|
Quote:
Hai dato un occhio a https://stackoverflow.com/questions/...tents/43513546 (in fondo c'è un test per verificare che effettivamente sia attivo) e prova anche qua: https://stackoverflow.com/questions/...hen-you-config |
|
20-05-2019, 12:50 | #11 | |
Member
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
|
Quote:
Nel php.ini mi mancava questa stringa Codice:
extension_dir = "ext" Grazie davvero |
|
20-05-2019, 13:00 | #12 | ||
Senior Member
Iscritto dal: Apr 2005
Messaggi: 2993
|
Quote:
Quote:
|
||
20-05-2019, 13:40 | #13 | |
Member
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
|
Quote:
Codice:
OPENSSL_CONF C:/xampp/apache/bin/openssl.cnf SERVER_SIGNATURE <address>Apache/2.4.39 (Win64) OpenSSL/1.0.2r PHP/7.1.28 Server at localhost Port 80</address> SERVER_SOFTWARE Apache/2.4.39 (Win64) OpenSSL/1.0.2r PHP/7.1.28 e gli errori che ho indicato erano solo Codice:
PHP Warning: file_get_contents(): Unable to find the wrapper "https" - did you forget to enable it when you configured PHP? in C:\\xampp\\htdocs\\Weather\\index.php on line 5 PHP Warning: file_get_contents(https://www.ilmeteo.it/meteo/Milano): failed to open stream: No such file or directory in C:\\xampp\\htdocs\\Weather\\index.php on line 5 Dire bugie per risolvere un problema sarebbe controproduttivo Ad ogni modo grazie per avermi aiutato a risolvere |
|
20-05-2019, 14:45 | #14 | |
Senior Member
Iscritto dal: Apr 2005
Messaggi: 2993
|
Quote:
OpenSSL support enabled OpenSSL Library Version OpenSSL 1.1.0g 2 Nov 2017 OpenSSL Header Version OpenSSL 1.1.0g 2 Nov 2017 Openssl default config /usr/lib/ssl/openssl.cnf che mi pare un pelo diverso dal tuo. Anche perchè lì indica la configurazione (OPENSSL_CONF C:/xampp/apache/bin/openssl.cnf) ma non dice se è o meno ENABLED Per scrupolo ho provato ad attivare una libreria che NON HO e ottengo nei log " ...cannot open shared object file: No ..." come mi aspettavo. Dovrei per scrupolo capire come lavora XAMPP ma non ho una macchina windows su cui testare. Buono comunque tu abbia risolto: pro futuro suggerisco caldamente la migrazione sotto linux! |
|
21-05-2019, 06:21 | #15 |
Member
Iscritto dal: Feb 2006
Messaggi: 134
|
Mi aggiungo calorosamente al consiglio!
E faccio una nota a margine: il problema principale (la mancata definizione di GET['city']) in realtà si poteva risolvere anche senza usare la 'isset'. Ma dato che è un metodo barbaro non l'ho detto e non lo dirò E' troppo importante imparare a usare le cose fatte bene piuttosto che metodi veloci ma pericolosi |
22-05-2019, 07:48 | #16 | |
Senior Member
Iscritto dal: Apr 2005
Messaggi: 2993
|
Quote:
|
|
22-05-2019, 16:54 | #17 | |
Member
Iscritto dal: Feb 2006
Messaggi: 134
|
Quote:
https://www.php.net/manual/en/langua...rorcontrol.php |
|
23-05-2019, 07:35 | #18 | |
Senior Member
Iscritto dal: Apr 2005
Messaggi: 2993
|
Quote:
Il modo corretto è proprio quello di usare isset, dal tuo post avevo capito proprio il contrario... |
|
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:10.