Non riesco più ad inviare email con il php

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
non ti fa l'update perche qui non esegui la query
PHP:
} else {
            $q = "UPDATE utenti SET attivo='1'";

            echo "Account attivato....";
        }
modifica cosi
PHP:
} else {
    $q = "UPDATE utenti SET attivo='1' WHERE email='$email' AND username='$username'";
    if (mysql_query($q)) {
        echo "Account attivato....";
    } else {
        echo $q . "<br/>" . mysql_error();
    }
}
 

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao

Provo la modifica e ti dico il risultato. Ti posto la pagina di attivazione.php Dovessero esserci altri errori.

attivazione.php

PHP:
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Account attivato</title>   
    </head>
    <body>
        <?php
        
        // includiamo il file di configurazione
        require_once("connetti.php");

        // qui bisognera decriptare
        
         // qui bisognera decriptare
        
         $pass= $_GET['password'];
         $email = $_GET['username'];  

        // controlliamo se i parametri sono presenti in tabella
$q = "SELECT id FROM utenti WHERE username='$username' AND password='$pass'"; 
         
        
// Controllo se lo username è presente nel db

$checkusername=mysql_query("SELECT username, attivo FROM utenti WHERE username='username' AND attivo='1'");
$vuota=mysql_num_rows($checkusername);
if($vuota > 0){
	 
        // controlliamo se i parametri sono presenti in tabella
$q = "SELECT id FROM utenti WHERE username='$username' AND attivo='0'";

exit();


}else{
    
    $q = "UPDATE utenti SET attivo='1' WHERE email='$email' AND username='$username'";
    if (mysql_query($q)) {
        echo "Account attivato....";
    } else {
        echo $q . "<br/>" . mysql_error();
    }
  
  echo "Account attivato....";
  header("Refresh: 10;URL=login.php");
}

    ?>

</body>
</html>
 
Ultima modifica:

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
ho sbagliato io
non cosi
PHP:
$q = "UPDATE utenti SET attivo='1' WHERE email='$email' AND username='$username'";
ma cosi
PHP:
$q = "UPDATE utenti SET attivo='1' WHERE email='$email' AND password='$pass'";

e commenta il refresh intanto
 

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
ciao

Domani provo e posto tutto quanto il risultato. Cosa intendi per commentare il refresh ??? O meglio cos'è in questo t caso il refresh ???? Se non sbaglio é l'aggiornamento della pagina giusto ???
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
volevo dire redirect

PHP:
header("Refresh: 10;URL=login.php");

è inutile cambiare pagina prima di aver risolto i problemi
 

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao

Ciao,

Purtroppo non va, continua a non farmi l'update. Con tutte le modifiche che mi hai detto di fare. Voglio provare a fare una cosa. Un semplice tastiino update e vedere se me lo cambia. Inoltre mi dice anche utente non trovato. Sei sicuro che ci vuole l'eamil anzicchè username ??? perchè nel login c'è da insierire lo username non l'email. Ora debbo andare al Gemelli di roma in ospedale. Per un controllo. Ci si sente dopo. Intanto fammi sapere che lo leggo dal cell. Ciao.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
perchè nel login c'è da insierire lo username non l'email.
non ti confondere

una cosa è la conferma dell'attivazione dell'account

altra cosa che non devi nemmeno considerare per il momento è il login

posta tutti i var_dump e gli echo che ti ho fatto mettere nella pagina attivazione.php
 

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao

Mi da i seguenti risultati:


SELECT id FROM utenti WHERE email='[email protected]' AND password=''string(72) "SELECT id FROM utenti WHERE email='[email protected]' AND password=''" Account attivato....Account attivato....

SELECT id FROM utenti WHERE email='' AND password=''string(52) "SELECT id FROM utenti WHERE email='' AND password=''" Account attivato....Account attivato....
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
continua a non arrivargli la password

rocontrolla il link in registrazione e i parametri GET in attivazione.php
 

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao

Ciao,

Ti posto il tutto così 4 occhi vedono meglio di due.

Questo è il link che va all'attivazione.php.
PHP:
$mail->MsgHTML('Grazie di esserti iscritto.  <a href="http://utenti/fabio/MegaLaboratorio/attivazione.php?email=' 
        . $_POST['email'] .'&password=' . $_POST['password'].'">clicca qui per attivare</a></b>'." "."per attviare l'account. Grazie."); 

[PHP]

Ora ti posto l'intera attivazione.php

[PHP]


<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Account attivato</title>   
    </head>
    <body>
        <?php
        
        // includiamo il file di configurazione
        require_once("connetti.php");

        // qui bisognera decriptare
        
         // qui bisognera decriptare
        
         $password= $_GET['password'];
         $email = $_GET['email'];  

        // controlliamo se i parametri sono presenti in tabella
$q = "SELECT id FROM utenti WHERE email='$email' AND password='$pass'"; 
         echo $q;
var_dump($q);
        
// Controllo se lo username è presente nel db

$checkusername=mysql_query("SELECT id, email, attivo FROM utenti WHERE id='$id' AND attivo='0'");
$vuota=mysql_num_rows($checkusername);
if($vuota > 0){
	 
        // controlliamo se i parametri sono presenti in tabella
//$q = "SELECT id FROM utenti WHERE username='$username' AND attivo='0'";

exit();


}else{
    
   $q = "UPDATE utenti SET attivo='1' WHERE email='$email' AND password='$pass'";
    if (mysql_query($q)) {
        echo "Account attivato....";
    } else {
        echo $q . "<br/>" . mysql_error();
        var_dump($q);
    }
  
  echo "Account attivato....";
  header("Refresh: 10;URL=attivazione.php");
}

    ?>

</body>
</html>

E questi sono i get che mi hai chiesto:

PHP:
$password= $_GET['password'];
         $email = $_GET['email'];

Inoltre ti volevo far vedere una cosa. come puoi vedere da questo link che ti posto, che la password la legge tranquillamente, ovviamente decriptata, l'ho messo io "xxx"

http://utenti/fabio/MegaLaboratorio/[email protected]&password=xxx

Semmai quello che non fa è l'update. Ti allego inoltre un'immjagine di quando vado ad eseguire il login.php. Ecco il risultato.
 
Ultima modifica:

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao

Ciao,

L'ho fatta più semplice. Come ti avevo accennato ieri sera. Ho messo un tastino "update", per vedere se effettivamente faceva l'update. E non lo fa.

E questo è il programmino stupido che dovrebbe effettuare l'update. Vado su phpmyadmin, e rimane sempre sullo "0" con tutto che sembra che effettui lupdate dal risultato che ti ho postato. Dov'è l'errore ???? Eppure la formula è quella no ???

PHP:
 <?php

require_once("connetti.php");


if (!isset($_POST['up'])) {
    

    ?>
<html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            
        <form action= '' method="POST">



<center>
                    <input type="submit" name="up" value="Update" />
</center>
</form>
 <?php
 
} else {
    

 $q ="UPDATE utenti SET attivo = '1' ";
 echo $q;
 var_dump($q);
 
}
 ?>


Questo è il risultato:

UPDATE utenti SET attivo = '1' string(31) "UPDATE utenti SET attivo = '1' "
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
per eseguire le query occorre questo comando
PHP:
mysql_query();
altrimenti non la eseguira mai

guarda il codice che hai postato prima
 

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao

Pardon, piccola distrazione, hai ragione, eppure di query ne ho viste centinaia che rinco. Scusa stavo in cucina.... Ma ora sono tornato. Provo ad inserlo ecco perchè non mi passa il valore su attivazione. Manca quella:

PHP:
 mysql_query();

Eeheheheh yuppiiiiiii L'ha aggiornato.
 
Ultima modifica:

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao

Una volta che siamo riusciti a capire dov'era l'errore, come bisogna procedere ora ???? Ora mi da i seguenti errori:

SELECT id FROM utenti WHERE email='[email protected]' AND password='xxx'string(77) "SELECT id FROM utenti WHERE email='[email protected]' AND password='xxx'" 1
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 1bool(true) Account attivato....

SELECT id FROM utenti WHERE email='' AND password=''string(52) "SELECT id FROM utenti WHERE email='' AND password=''" 1
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 1bool(true) Account attivato....
 
Ultima modifica:

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao

Allora ti posto di nuovo attivazione.php

PHP:
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Account attivato</title>   
    </head>
    <body>
        <?php
        
        // includiamo il file di configurazione
        require_once("connetti.php");

        // qui bisognera decriptare
        
         // qui bisognera decriptare
        
         $password= $_GET['password'];
         $email = $_GET['email'];  

        // controlliamo se i parametri sono presenti in tabella
//$q = "SELECT id FROM utenti WHERE email='$email' AND password='$password'"; 
  //       echo $q;
//var_dump($q);
        
// Controllo se lo username è presente nel db

$checkusername=mysql_query("SELECT id, email FROM utenti WHERE id='$id' ");
$vuota=mysql_num_rows($checkusername);
if($vuota > 0){
	 
exit();


}else{
    
   $q =  mysql_query("UPDATE utenti SET attivo='1' WHERE email='$email' AND password='$password'");
    if (mysql_query($q)) {
        echo "Account attivato....";
    } else {
        echo $q . "<br/>" . mysql_error();
        var_dump($q);
    }
  
  echo "Account attivato....";
  header("Refresh: 10;URL=attivazione.php");
}

    ?>

</body>
</html>

Come puoi notare, ho modificato la query, ma rimane sempre a zero e non fa l'update.

PHP:
$q =  mysql_query("UPDATE utenti SET attivo='1' WHERE email='$email' AND password='$password'");

Ed infine, mi da il seguente risultato:

1
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 1bool(true) Account attivato....

Rimanendo sempre su attivo = 0 Invece, con il singolo pulsantino me lo modificava. :(

Allora signori e signori, apriamo una mezza bottiglia di spumante. Il problema era il seguente:

In origine veniva fatto questo errore:

PHP:
$q =  "UPDATE utenti SET attivo='1' WHERE email='$email' AND password='$password'";

Dopo l'osservazione di criric, e modificata in questa maniera:

PHP:
$q =  mysql_query("UPDATE utenti SET attivo='1' WHERE email='$email' AND password='$password'");

Aggiungendo la parolina magica:

PHP:
$q =  mysql_query();

Alla query, sembrava che funzionasse. Ma invece non faceva la modifica. Dopo di che di mia iniziativa, ho modificato la query in questa maniera:

PHP:
$q =  mysql_query("UPDATE utenti SET attivo='1'");

Andando a vedere su phpmyadmin, passa da attivo = 0 a attivo = 1 e finalmente questa parte l'abbiamo, credo (da profano), chiusa, ma non del tutto. Perchè mi continua a segnalare il seguente errore:

1
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 1bool(true) Account attivato....

Che non ho la più pallida idea di dove si trovi. Inoltre esegendo il login, non mi fa accedere e mi compare questa schermata che riposto di nuovo sotto forma d'immagine. credo che piano piano grazie all'aiuto di cricric e soprattutto alla sua sopportazione, stiamo per risolvere il parto. Ecco l'immagine che mi compare a video. Ovviamente, chi si vuole unire alla discussione per trovare la soluzione migliore ben venga.
 
Ultima modifica:

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao

Salve a tutto lo staff,

Allora ho fatto qualche prova, ma il risultato è semppre lo stesso. Non mi fa entrare. Ho apportato delle modifiche su attivazione e l'ho fatta più semplice. Posto ora la pagina attivazioneutente:

PHP:
<?php

require_once("connetti.php");

//$email = $email;

$email = $_POST['email'];          //Questa dovrebbe essere la valorizzazione della variabile. Giusto ???? Correggetemi se sbaglio

$q =  mysql_query("UPDATE utenti  WHERE email='$email'  SET attivo='1'");
    if (mysql_query($q)) {
        echo "Account attivato....";
        header("Refresh: 3;URL=login2.php");
    } else {
       echo "Errore: account non attivato";
    
}

?>

E Questa che posto è la stringa di attivazione, che va direttamente alla pagina attivazioneutente.php

PHP:
$mail->MsgHTML('Grazie di esserti iscritto.  <a href="http://utenti/fabio/MegaLaboratorio/attivautente.php?email=. $_POST['email']. '">clicca qui per attivare</a></b>'." "."per attviare l'account. Grazie.");

Mi dite perchè se ci aggiungo l'id, non me lo legge ??? E l'amil si ??? Ossia, la stringa con l'id sarebbe la seguente:

PHP:
$mail->MsgHTML('Grazie di esserti iscritto.  <a href="http://utenti/fabio/MegaLaboratorio/attivautente.php?id=' . $_POST['id'] .'&email' . $_POST['email'].'">clicca qui per attivare</a></b>'." "."per attviare l'account. Grazie.");

Grazie, spero di avere come al solito qualche delicidazione. Il vostro aiuto è stato sempre prezioso e risolutivo.
 
Discussioni simili
Autore Titolo Forum Risposte Data
W Non riesco più a modificare i dati di una tabella da phpmyadmin MySQL 0
A Non riesco più a visualizzare il codice sicurezza nel forum Supporto Mr.Webmaster 3
C Non riesco più ad entrare su WordPress...."È richiesto l'aggiornamento del database" WordPress 0
C Non riesco più a pubblicare il web con Front Page HTML e CSS 8
B Non riesco a trovare i cognomi con i caratteri speciali in Access (Microsoft 365) MS Access 0
L Non riesco a riprodurre uno sfondo Photoshop 0
R Non riesco a rinnovare l'immagine di sfondo PHP 1
G non riesco a capire quale sia l'errore [SQL] MySQL 2
R Non riesco a cambiare l'immagine di sfondo PHP 4
I Non riesco ad accedere ftp tramite IP in LAN Reti LAN e Wireless 6
Leshabituelles Non riesco ad aggiornare PHP PHP 0
D [HTML] Non riesco aprire foto singole in un album creato con "iWebAlbum" HTML e CSS 1
D [MS Access] aiuto non riesco a capire MS Access 6
T [PHP] aiuto....Fatal error: Uncaught Error:non riesco a capire PHP 1
O PHP 5.6 non riesco ad abilitare TSL 1.2 PHP 1
C non riesco a inviare la posta con account alice Posta Elettronica 1
L [Javascript] aiuto non riesco a inviare in get dal server web locale su altervista con httpRequest Javascript 0
G [Javascript] non riesco a usare ace - ReferenceError: define is not defined 1 ace.js:37:1 Javascript 0
booklisa Non riesco a connettermi: Connection timed out CMS (Content Management System) 3
A Non riesco ad inviare una mail attraverso PHP su Xampp PHP 2
otto9due Lampeggiamento solo su .hover(), inizia ma non riesco a fermarlo! jQuery 2
ANDREA20 [PHP] Non riesco ad impostare reset password invio via email PHP 6
S [PHP] Aiuto! Non riesco a richiamare una variabile PHP 2
V [PHP] Non riesco a trovare errore PHP 25
SimooRu [PHP] Non riesco a far passare i dati con i form PHP 4
elpirata [HTML] Non riesco a centrare menu orizzontale HTML e CSS 5
CristianB72 Non riesco a connettermi al DB tramite PDO Database 10
G Non riesco a spostare un cerchio fatto con tracciati in photoshop Photoshop 1
gandalf1959 IPN Listener di Paypal, non riesco a registrare utente nel mio DB PHP 14
G Non riesco a colorare una campitura con lo strumento penna Photoshop 1
P non riesco a visualizzare i dati dopo aver inserto l'id PHP 36
P Non riesco a capire dove sta l'errore e perchè non mi memorizza il contenuto PHP 14
marino51 non riesco a caricare un allegato percgè non riesco a ridimensionare la finestra Supporto Mr.Webmaster 0
napuleone XP non riesco a cambiare le impostazioni delle cartelle Windows e Software 2
E non riesco a installare git su mac Mac e Software 0
Shyson Non riesco a modificare i commenti del visitatori Social Media Marketing 0
T Non riesco ad installare il composer su xampp Apache 0
A Non riesco a fare backup sito perchè Filezilla non scarica tutti i file! Web Server 4
P non riesco a registrarmi a MrW.Tools.it Comunicazioni dallo Staff 4
neo996sps Non riesco a fare un parse XML con PHP PHP 1
M non riesco a configurare Apache 0
S non riesco a capire la struttura di questo sito in PHP PHP 0
S [RISOLTO]aiuto, non riesco afar funzionare il camp odi ricerca per un DB con PHP PHP 5
Monital variabili nei link, non riesco a passarle PHP 8
L Non riesco a far funzionare un plugin (probabilmente ho sbagliato qualcosa nel richiamare lo script) jQuery 10
S non riesco ad eliminare dei caratteri in PHP - Excel PHP 10
A Html e css non riesco a capire l'errore HTML e CSS 13
C Non riesco ad attivare il sito in locale (nè in rete) - PHP / EasyPHP PHP 4
P Befana che vola non riesco a trovarla Javascript 6
A Non riesco a visualizzare il file PHP 2

Discussioni simili