Salve a tutti,
visto che ho sempre ricevuto assistenza ottima e a tempi record insisto
(speriamo di essere ancora fortunato :P).
Vi spiego il mio problema è un po' stupido in effetti, ho una pagina a cui arrivo tramite paypal e gestisce l'ipn. Ora in questa pagina faccio alcune query e mi interessava realizzare un if dimodoché se la query va bene invia una mail altrimenti stampa un errore. Così ho pensato di fare un codice di questo tipo:
Codice PHP:
$query = "INSERT INTO payments (name, surname, email, website, country) VALUES ('$first_name', '$last_name', '$website', '$address_country')";
mysql_connect($host_nome,$db_utente,$db_pass) or die("Error connecting to the database
" . mysql_error(). "
" . mysql_errno());
mysql_selectdb("$db_nome") or die("Error selecting the database");
$risultato = mysql_db_query($db_nome, $query);
if ($risultato) {
// codice per inviare mail
}
else {
echo "errore!" }
Ora non capisco perché questo codice mi salva nel database due volte la query. Perciò ho due record identici con l'id incrementato. Il problema scompare se uso questo codice qui:
Codice PHP:
$query = "INSERT INTO payments (name, surname, email, website, country) VALUES ('$first_name', '$last_name', '$payer_email', '$website', '$address_country')";
mysql_connect($host_nome,$db_utente,$db_pass) or die("Error connecting to the database
" . mysql_error(). "
" . mysql_errno());
mysql_selectdb("$db_nome") or die("Error selecting the database");
mysql_db_query($db_nome, $query);
//codice invio mail
ho provato anche così ma salva sempre due volte :S
Codice PHP:
$query = "INSERT INTO payments (name, surname, email, website, country) VALUES ('$first_name', '$last_name', '$website', '$address_country')";
mysql_connect($host_nome,$db_utente,$db_pass) or die("Error connecting to the database
" . mysql_error(). "
" . mysql_errno());
mysql_selectdb("$db_nome") or die("Error selecting the database");
if (mysql_db_query($db_nome, $query) {
// codice per inviare mail
}
else {
echo "errore!" }
Per ora ho risolto evitando l'if e non riportando eventuali errori (potrei anche fare or die nella query però boh...mi piace la soluzione dell'if così mantengo la formattazione della pagina). Comunque non è una cosa urgente quindi non vi affrettate
, si tratta più di una curiosità perchè mi sembra tutto un po' strano :P.
Ciao a tutti e grazie in anticipo