Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Apple MacBook Air M3: chi deve davvero comprarlo? La recensione
Apple MacBook Air M3: chi deve davvero comprarlo? La recensione
A distanza di circa 8 mesi arriva l’importante aggiornamento dei MacBook Air: nessun cambiamento estetico, ma una revisione hardware interna con l’upgrade al processore M3. Le prestazioni migliorano rispetto alle generazioni precedenti, e questo fa sorgere una domanda spontanea: a chi è rivolto oggi questo laptop? Cerchiamo di capirlo nella nostra recensione 
ASUS ROG Swift OLED PG49WCD: quando QD-OLED e ultrawide si fondono
ASUS ROG Swift OLED PG49WCD: quando QD-OLED e ultrawide si fondono
Da ASUS un monitor particolare ma molto completo: principalmente indirizzato al videogiocatore, può essere sfruttato con efficacia anche per attività creative e di produzione multimediale
Dreame L10s Pro Ultra Heat: la pulizia di casa tutta sostanza
Dreame L10s Pro Ultra Heat: la pulizia di casa tutta sostanza
Il nuovo robot aspirapolvere domestico di Dreame abbina funzionalità complete a un moccio flottante che raggiunge al meglio gli angoli delle pareti. Un prodotto tutto in uno semplice da utilizzare ma molto efficace, in grado di rispondere al meglio alle necessità di pulizia della casa
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 17-05-2019, 13:54   #1
eresseie90
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>
La cosa divertente è che mi sembra uguale a quello che ha fatto il corso.. c'è qualche cosa che mi sfugge?
eresseie90 è offline   Rispondi citando il messaggio o parte di esso
Old 18-05-2019, 20:15   #2
Volutomitra
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.
Volutomitra è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2019, 00:35   #3
eresseie90
Member
 
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
Quote:
Originariamente inviato da Volutomitra Guarda i messaggi
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.
Scusa ma quel city non lo va a prendere dal "name" del form? almeno così ho capito da quanto ha spiegato (ps: e dal video sembra che a lui funzioni il comando... magari mi è sfuggito qualcosa nel file php.ini
eresseie90 è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2019, 11:01   #4
Volutomitra
Member
 
Iscritto dal: Feb 2006
Messaggi: 134
Quote:
Originariamente inviato da eresseie90 Guarda i messaggi
Scusa ma quel city non lo va a prendere dal "name" del form? almeno così ho capito da quanto ha spiegato (ps: e dal video sembra che a lui funzioni il comando... magari mi è sfuggito qualcosa nel file php.ini
Certo. Ma lo prende dopo che hai inviato il form cliccando sul pulsante 'Invia':

Codice:
<form>
...
<button type="submit" class="btn btn-primary">Invia</button>
</form>
ma la prima volta che entri nella pagina come è definito GET['city']?
Volutomitra è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2019, 15:13   #5
eresseie90
Member
 
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
Quote:
Originariamente inviato da Volutomitra Guarda i messaggi
ma la prima volta che entri nella pagina come è definito GET['city']?
"Unable to find" appena entrato nella pagina
eresseie90 è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2019, 20:00   #6
Volutomitra
Member
 
Iscritto dal: Feb 2006
Messaggi: 134
Quote:
Originariamente inviato da eresseie90 Guarda i messaggi
"Unable to find" appena entrato nella pagina
Appunto. Non lo trova perché non è definito. E per verificare se è definito si usa la 'isset'. Mi sembra semplice, no?
Volutomitra è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2019, 21:42   #7
eresseie90
Member
 
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
Quote:
Originariamente inviato da Volutomitra Guarda i messaggi
Appunto. Non lo trova perché non è definito. E per verificare se è definito si usa la 'isset'. Mi sembra semplice, no?
Semplice grazie e ancora una cosa (non mandarmi a quel paese)
Ora mi indica
Quote:
Warning: file_get_contents(http://www.weather-forecast.com/loca...recasts/latest) : failed to open stream: Unable to find the socket transport &quot;ssl&quot; - did you forget to enable it when you configured PHP? in C:\xampp\htdocs\Weather\index.php on line 5
Cercando in rete indicano di rimuovere il punto e virgola da questa espressione

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:
failed to open stream: No such file or directory in C:\xampp\htdocs\Weather\index.php on line 5
(ho provato anche con il sito del meteo.it ma nulla)

Ultima modifica di eresseie90 : 19-05-2019 alle 21:51. Motivo: Aggiunta
eresseie90 è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2019, 08:47   #8
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 2984
Quote:
Originariamente inviato da eresseie90 Guarda i messaggi
Semplice grazie e ancora una cosa (non mandarmi a quel paese)
Ora mi indica


Cercando in rete indicano di rimuovere il punto e virgola da questa espressione

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:


(ho provato anche con il sito del meteo.it ma nulla)
Siccome anche se togli la 's' il sito ti ridirige verso l'https la cosa NON può funzionare.

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?
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2019, 12:17   #9
eresseie90
Member
 
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
Quote:
Originariamente inviato da Kaya Guarda i messaggi
Siccome anche se togli la 's' il sito ti ridirige verso l'https la cosa NON può funzionare.

Dopo aver attivato il modulo php_openssl.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?
per php_openssl.dll avevo già riavviato il server di apache e risulta attivo
nei file log non risulta niente di strano a parte l'errore che ho descritto nel messaggio precedente

Quote:
PHP Warning: file_get_contents(): Unable to find the wrapper &quot;https&quot; - 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
EDIT:
ps: la pagina è composta solo dal codice che ho messo all'inizio del topic

Ultima modifica di eresseie90 : 20-05-2019 alle 12:21.
eresseie90 è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2019, 13:31   #10
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 2984
Quote:
Originariamente inviato da eresseie90 Guarda i messaggi
per php_openssl.dll avevo già riavviato il server di apache e risulta attivo
nei file log non risulta niente di strano a parte l'errore che ho descritto nel messaggio precedente



EDIT:
ps: la pagina è composta solo dal codice che ho messo all'inizio del topic
Risulta attivo con phpinfo()?
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
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2019, 13:50   #11
eresseie90
Member
 
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
Quote:
Originariamente inviato da Kaya Guarda i messaggi
Risulta attivo con phpinfo()?
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
Ho trovato l'errore grazie al secondo link

Nel php.ini mi mancava questa stringa

Codice:
extension_dir = "ext"
Il file php_openssl.dll è nella cartella xampp\php\ext

Grazie davvero
eresseie90 è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2019, 14:00   #12
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 2984
Quote:
Originariamente inviato da eresseie90 Guarda i messaggi
Ho trovato l'errore grazie al secondo link

Nel php.ini mi mancava questa stringa

Codice:
extension_dir = "ext"
Il file php_openssl.dll è nella cartella xampp\php\ext

Grazie davvero
Onestamente però mi sembra strano che nel log di apache o pho non ci fosse l'errore che diceva di non aver trovato la libreria.

Quote:
per php_openssl.dll avevo già riavviato il server di apache e risulta attivo
Quindi qua hai detto una bugia?
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2019, 14:40   #13
eresseie90
Member
 
Iscritto dal: Feb 2017
Città: Bergamo
Messaggi: 46
Quote:
Originariamente inviato da Kaya Guarda i messaggi
Onestamente però mi sembra strano che nel log di apache o pho non ci fosse l'errore che diceva di non aver trovato la libreria.


Quindi qua hai detto una bugia?
non era una bugia
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
o non sono capace di leggere il phpinfo()
e gli errori che ho indicato erano solo
Codice:
PHP Warning: file_get_contents(): Unable to find the wrapper &quot;https&quot; - 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
Nel log

Dire bugie per risolvere un problema sarebbe controproduttivo

Ad ogni modo grazie per avermi aiutato a risolvere
eresseie90 è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2019, 15:45   #14
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 2984
Quote:
Originariamente inviato da eresseie90 Guarda i messaggi
non era una bugia
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
o non sono capace di leggere il phpinfo()
e gli errori che ho indicato erano solo
Codice:
PHP Warning: file_get_contents(): Unable to find the wrapper &quot;https&quot; - 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
Nel log

Dire bugie per risolvere un problema sarebbe controproduttivo

Ad ogni modo grazie per avermi aiutato a risolvere
Allora io se faccio un phpinfo ottengo:
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!
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 21-05-2019, 07:21   #15
Volutomitra
Member
 
Iscritto dal: Feb 2006
Messaggi: 134
Quote:
Originariamente inviato da Kaya Guarda i messaggi
pro futuro suggerisco caldamente la migrazione sotto linux!
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
Volutomitra è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2019, 08:48   #16
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 2984
Quote:
Originariamente inviato da Volutomitra Guarda i messaggi
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
Vado un po OT per comprendere di più: cosa useresti al posto di isset per valutare se la variabile è impostata? empty?
Kaya è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2019, 17:54   #17
Volutomitra
Member
 
Iscritto dal: Feb 2006
Messaggi: 134
Quote:
Originariamente inviato da Kaya Guarda i messaggi
Vado un po OT per comprendere di più: cosa useresti al posto di isset per valutare se la variabile è impostata? empty?
Vabbè, lo dico. Però poi negherò di averlo fatto

https://www.php.net/manual/en/langua...rorcontrol.php
Volutomitra è offline   Rispondi citando il messaggio o parte di esso
Old 23-05-2019, 08:35   #18
Kaya
Senior Member
 
Iscritto dal: Apr 2005
Messaggi: 2984
Quote:
Originariamente inviato da Volutomitra Guarda i messaggi
Vabbè, lo dico. Però poi negherò di averlo fatto

https://www.php.net/manual/en/langua...rorcontrol.php
Ci credo, questo è proprio...brrrrr....

Il modo corretto è proprio quello di usare isset, dal tuo post avevo capito proprio il contrario...
Kaya è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Apple MacBook Air M3: chi deve davvero comprarlo? La recensione Apple MacBook Air M3: chi deve davvero comprarlo...
ASUS ROG Swift OLED PG49WCD: quando QD-OLED e ultrawide si fondono ASUS ROG Swift OLED PG49WCD: quando QD-OLED e ul...
Dreame L10s Pro Ultra Heat: la pulizia di casa tutta sostanza Dreame L10s Pro Ultra Heat: la pulizia di casa t...
HONOR Magic6 Pro: come funziona Magic Portal, il modo ''intelligente'' di condividere HONOR Magic6 Pro: come funziona Magic Portal, il...
L'innovazione richiede fiducia: Workday si propone come guida nell'era dell'IA L'innovazione richiede fiducia: Workday si propo...
NIO inizia la produzione del sistema a 9...
Microsoft Edge consentirà di limi...
I driver NVIDIA crashano al torneo milio...
Rinviato l'ultimo lancio del razzo spazi...
CMF Buds by Nothing: gli auricolari econ...
Accordo di intesa firmato, saranno di SK...
iPhone, il supporto alla messaggistica R...
Una GeForce RTX 3080 a meno di 800 euro ...
Ecco le migliori offerte sui processori ...
Polestar presenta Polestar Charge, il se...
PyPI bersagli di un attacco malware: reg...
Putin ha chiesto al governo russo di pen...
Un display AMOLED curvo su un dissipator...
Speciale sedie da ufficio e gaming in of...
Aggiornamenti per Sony Alpha 1, Alpha 9 ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:39.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Served by www1v