Buongiorno. Sono nuovo del forum quindi se canno qualcosa abbiate pazienza.
Sto lavorando su un sito ed il problema del momento è questo:
Sto facendo un form per inserire degli eventi. Form ok e collegamento al db rudimentale ma funzionante. Inserire dati ci riesco senza problema mentre le difficoltà le incontro nelle procedure di controllo automatiche che sto impostando x evitare di inserire due eventi identici o nella stessa giornata. Vi passo il codice su cui ho i miei problemi e poi vi spiego i dettagli:
[ PHP ]
if ( $alfa[0] == $l and $alfa[1] == $m) {
echo "Evento già inserito. Impossibile inserirne uno identico";
require "index.php";
die();
}
elseif ($alfa[1] == $m and !isset($alfa[0])){
echo "<p>Nello stesso giorno esiste già un avvenimento: $l.<br>Inserire anche quest'ultimo?</p><br><form action=\"control.php\" method=\"post\"><input id=\"reinvia\" type=\"submit\" name=\"reinvia\" value=\"reinvia\">";
die;
}
[ /PHP ]
Allora. $l corrisponde al titolo immesso nel form mentr $m corrisponde alla data. $alfa è l'array che ottengo da una chiamata al server e rispettivamente $alfa[0] corrisponde al titolo del evento (faccio una chiamata al server con un semplice SELECT * etc) mentre $alfa[1] corrisponde alla data del giorno. La prima parte della condizione quella dove mi risponderebbe "Evento già inserito" funziona senza alcun problema e funziona bene anche l'inserimento dei dati, quando passa oltre la condizione; quello che non funziona è la seconda condizione, ovvero quella che dovrebbe dirmi "Nello stesso giorno esiste...".
A mio parere non mi controlla la seconda condizione di quel elseif. Ho provato con:
[ PHP ]
$alfa[0] !== $l
!$alfa
$alfa[0] !=== $l
[ /PHP ]
ma non riesco comunque perché il dato passa oltre il controllo. Non riesco a capire dove è l'errore.