problema if else non si eseguono

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
Salve, ho questo piccolissimo codice che sto faccendo tramite un tutorial fatto con il vecchio mysql..
però questo non c'èntra..

ma non mi riesce ad funzionare l'if ed else per controllare l'id e la key.

ecco il codice:

PHP:
<?php
require_once(dirname(__FILE__) . '/../inc.php');

require_once(dirname(__FILE__) . "/../template/".$template_client."/header.php");

	$id = (int)$_GET["id"];

	$key = $_GET['key'];

	

		$query = $db->query("SELECT * FROM utenti WHERE id = '".$id."' and pass_activationHash='".$key."'");
		
		
		if($row= $query->num_rows==1)
		{
			$row = $query->fetch_assoc();
			if($row['temp_pass_active']==1)			{
				$msg =   'La tua password  risulta gi&agrave; attivo.!';
			}
			elseif($row['pass_activationHash']!=$key)
			{
				$msg ='Chiave di conferma non corrispondono!';
			}
			else
			{
				$db->query("UPDATE utenti SET pass='".$row["pass_temp"]."', temp_pass_active=2 WHERE id=".$id." and pass_activationHash='".$key."'")  or die($db->error);
				$msg ='Congratulazione La tua passsword  &egrave; valida';
			}
		}
		else {
		
			$msg = 'User not found !';
		
		}

	

	if(isset($error))
	{
		echo $error;
	}
	else {
		echo $msg;
	}
	require_once(dirname(__FILE__) . "/../template/".$template_client."/footer.php");
?>

mi date informazioni come mai?

grazie mille e buona domenica..
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
forse perche mancano le parentesi all funzione num_rows

PHP:
if ($row = $query->num_rows() == 1) {
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
ciao
metti dei var_dump() per vedere cosa ti risulta $row al fetch_assoc

allora ho messo il var_dump alla fine e lo messo al row..
la cosa è cosi:

array(2) { ["temp_pass_active"]=> string(1) "1" ["pass_activationHash"]=> string(32) "e9da82f4c252e7f1745ae88f2624fc07" } La tua password risulta già attivo.!

se metto un dato a caso .. ad esempio la chiave ma aggiungendole un " s "
viene cosi:

int(0) User not found !

quindi?

grazie mille e buona serata.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
se hai scritto tutto il var dump e hai fatto il var_dump($row);
array(2) { ["temp_pass_active"]=> string(1) "1" ["pass_activationHash"]=> string(32) "e9da82f4c252e7f1745ae88f2624fc07" }
La tua password risulta già attivo.!

c'è qualcosa che non torna
nella select tu fai SELECT * quindi estrai tutto
nella $row (array) è sparito l'id che mi sembra tu debba avere.
ti scrivo (facendo inorridire alex) con il vecchio mysql

se nella tabella hai id, pas_act, pas_ash (tre campi)
con
PHP:
//......
$ris=mysql_query("SELECT * FROM utenti WHERE id = '".$id."' and pass_activationHash='".$key."'");
$row=mysql_fetch_assoc($ris)
var_dump($row)
//....
il var_dump dovrebbe darti
array(3) { ["id"]=> int(1) 1 ["temp_pass_active"]=> string(1) "1" ["pass_activationHash"]=> string(32) "e9da82f4c252e7f1745ae88f2624fc07" }
e non array(2) ...ecc...
 

luigi777

Utente Attivo
14 Feb 2008
1.085
1
38
39
Massa, Italy
ha ragione lo script..
perché essendo che l'account è già stata attivata la password ed quindi si blocca al primo if e non fa il seccondo perché essendo già convalidato..

ora non ho tempo ma sto risolvendo un'altro problema dei ruoli degli utenti..

poi ora non ho il pc sotto mano.. e sono con il portatile controllerò domani..

grazie idee?

ciao e buona serata.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
se per
intendi come risolvere gli if, potersti provare in questo modo
PHP:
<?php
//.........
 $msg="";
 if($row= $query->num_rows==1){ 
            $row = $query->fetch_assoc(); 
            if($row['temp_pass_active']==1){ 
                $msg .=   'La tua password  risulta gi&agrave; attivo.!<br>'; 
            } 
            if($row['pass_activationHash']!=$key){ 
                $msg .='Chiave di conferma non corrispondono!'; 
            } 
            if($msg==""){ // se ok $msg è vuoto
                $db->query("UPDATE utenti SET pass='".$row["pass_temp"]."', temp_pass_active=2 WHERE id=".$id." and pass_activationHash='".$key."'")  or die($db->error); 
                $msg ='Congratulazione La tua passsword  &egrave; valida'; 
            } 
        } else { 
            $msg = 'User not found !'; 
        } 
//......
?>
così dovresti vedere se pass attiva o non corrispondono o entrambi i casi
 
Discussioni simili
Autore Titolo Forum Risposte Data
X [PHP] Problema if else PHP 23
T problema tra if else e print sprintf PHP 2
D problema con ciclo if else query PHP 3
P Problema acquisizione clienti Webdesign e Grafica 0
F NetBeans problema creazione progetto Java Windows e Software 0
M Problema con Try Catch PHP 0
C problema seo + cerco esperto SEO e Posizionamento 7
Sergio Unia Problema con gli eventi del mouse su una data table: Javascript 2
T PROBLEMA CON SESSIONI PHP 3
A Problema, non so, di scale() o transform, oppure altro? HTML e CSS 0
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
T PROBLEMA CON ARRAY PHP 8
L problema con query select PHP 2
R Problema query con ricerca id numerico PHP 2
F Problema con risposta PHP 0
S problema con recupero dati tabella mysql PHP 2
Z Problema con il mio tp-l i nk Reti LAN e Wireless 1
I PROBLEMA: Sostituzione sito XAMPP E-Commerce 0
T problema data 30/11/-1 PHP 0
L Problema RAM con Tomcat 8 Apache 0
napuleone problema con sort e asort PHP 4
Y Problema incolonnamento tabella PHP 7
S problema salvataggio immagini Photoshop 0
Z Problema con INT MySQL PHP 1
Z Problema database MySQL con XAMPP PHP 0
M Problema con controllo form in real time jQuery 6
D problema php mysql PHP 1
D problema php mysql PHP 1
M Problema Wi-Fi Linux Linux e Software 1
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
Daniele_Carrara Problema Aperture Mailup Email Marketing 5
F PROBLEMA ACCESSO INSTAGRAM Discussioni Varie 2
R Problema connessione db PHP 7
M problema if PHP 2
G Problema con Get page PHP 4
N Problema passaggio variabili tra pagine PHP 4
P Problema con require once PHP 6
P Problema con i package Java 1
A Problema login con Safari PHP 14
F INDESIGN: problema esportazione esecutivo per la stampa con foto B/N Webdesign e Grafica 1
H problema carrello woocommerce PHP 2
S problema con css bootstrap3 HTML e CSS 4
M .load() problema con caricamenti dinamici di js Javascript 0
M Problema su query JOIN in tre tabelle PHP 0
S Problema esportazione tabelle Mysql in Excel PHP 0
G Problema ------- con Query PHP 1
G Problema con Query PHP 1
M Problema su update di 3 tabelle PHP 1
T problema con select dinamica con jquery Javascript 0
A Problema checkout carrello php PHP 2

Discussioni simili