Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Imposta campo del DB

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    74

    Imposta campo del DB

    Salve,
    vi spiego brevemente, per quanto possibile, il mio problema.
    Sto costruendo un'applicazione web e mi trovo a combattere con la funzione mail php per l'invio del link di conferma account dopo la registrazione.
    La mail parte e funziona, anche il link di conferma apre la pagina giusta, ma il campo STATO dell'Utente non viene impostato a 1.
    Impostare lo stato a 1 significa che l'utente registrato ha abilitato il suo account! vi mostro in ordine i file impegnati in tutto ciò.

    questo è il link presente nella mail: http://localhost/fedeb/GestioneGET.p...lita&username=$user ( magari è proprio qui l'errore,magari non passo bene le variabili);

    GestioneGET.php

    <?php

    require_once('Singleton.class.php');

    if(isset($_GET['menu']))
    $menu=$_GET['menu'] or die('Menu non presente');
    ..
    ....
    ...
    if($menu=='abilita')
    {
    require_once('Control\CVerificaRegistrazione.class .php');

    $verifica=Singleton::getInstance("CVerificaRegistr azione");
    $verifica->visualizza();
    }



    ?>


    CVerificaRegistrazione.class.php
    <?php
    require_once('Control\CCompartment.class.php');
    require_once('Control\MySmarty.class.php');

    class CVerificaRegistrazione extends CCompartment
    {
    function __construct()
    {
    require_once("Foundation/FUtente.class.php");
    $utente=Singleton::getInstance("FUtente");
    $utente->abilitaUtente($user);
    $this->setTemplate('verificaRegistrazione');


    }
    public function visualizza()
    {
    require_once('Singleton.class.php');
    $smarty=Singleton::getInstance("MySmarty");
    $smarty->display('verificaRegistrazione.tpl');
    }
    }
    ?>


    CUtente.class.php
    public function abilitaUtente($user)
    {

    $mysqli=new FControl();
    $sql= " SELECT *
    FROM utente
    WHERE username='{$user}';";
    if($result=$mysqli->query($sql)){
    if(($result->num_rows)==0){
    $mysqli->close();
    return false;
    }
    else{

    $result=$result->fetch_assoc();
    $result['STATO']=1;
    $mysqli->close();
    }
    }
    else{
    print("Errore cambia stato!".$mysqli->error);
    $mysqli->close();
    exit();
    }
    }

    Cosa sbaglio????

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Ti stampa a video l'errore di queto else?
    else{
    print("Errore cambia stato!".$mysqli->error);
    $mysqli->close();
    exit();
    }

    Dove devi settare stato=1?
    $result['STATO']=1;
    imposta a 1 l'elemento di nome "STATO" appartenente all'array $result.

    Per modificare il campo del db devi effettuare una query UPDATE.

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    74
    la stampa a video dell'else non viene visualizzata...quindi in quella funzione non ci entra proprio!! 0_o
    Provo con l'update e ti faccio sapere!!!! grazie!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.