Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 39
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    95

    Prendere l'inidirizzo email inserito per il login..

    Salve,
    mi sono bloccato su una cosa.
    In pratica ho un form di login dove inserisci:
    username (equivalente alla email)
    psw (creata in automatica random)

    Una volta fatto il login, c'è la possibilità di inserire un articolo, form con titolo e descrizione.
    Dovrei fare un controllo, con quell'indirizzo email è possibile inserire un solo articolo.

    //puoi inviare un solo articolo per concorso
    $queryDoppioni = "SELECT * FROM $nomeTabella WHERE email = '$email'";
    $sqlDoppioni = @mysql_query($queryDoppioni);
    if (($sqlDoppioni) AND (mysql_num_rows($sqlDoppioni) == 0))
    {
    $queryInsert = "INSERT INTO $nomeTabella (titolo, articolo, username, data_ins) VALUES ('$titolo', '$articolo', '$email', NOW());";
    $sql = mysql_query($queryInsert);
    }
    else

    // La query va a buon fine o meno ?…
    if ($sqlDoppioni)
    {
    $messaggio = "E' possibile inviare un solo articolo per concorso attivo. Ci risulta che lei ha gia’ inviato un articolo.";
    die();
    }
    //fine


    Come faccio a richiamare l'username/email che è stata inserita nel login?

  2. #2
    Scusa per fare il login devi reperire da qualche parte l'email?
    CODENCODE \ Branding \ Design \ Marketing
    www.codencode.it

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    95
    Originariamente inviato da codencode
    Scusa per fare il login devi reperire da qualche parte l'email?
    form registrazione, inserisci nome cognome e email
    e salva i dati nel db tabella utenti..

    è una cosa semplice...ma mi sono un attimo bloccato

  4. #4
    Non intendo la registrazione, intendo il login.
    Facciamo un po di ordine, quando devi postare un articolo, lo puoi fare se prima effettui il login, quindi quando effettui il controllo sull'email per verificare se l'utente è iscritto, sai qual'è l'email. Quindi puoi memorizzarla in sessione. Oppure ancora meglio puoi memorizzare l'id e mediante l'id puoi reperire l'email.
    CODENCODE \ Branding \ Design \ Marketing
    www.codencode.it

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    95
    esatto, ma come si fa?
    ho la pagina checkuser.php dove fa il controllo

    $tabellaUtenti = $tbl_prefix."utenti";

    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string($_POST['password']);

    if((!$username) || (!$password))
    {
    $messaggio = "Per accedere è necessario immettere username e password.

    Per tornare in home page clicca qui";
    include 'standard.php';
    die();
    }

  6. #6
    Mai sentio parlare di sessione?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    Non vedo le istruzioni che controllano nel db.

    Comunque da qualche parte credo ci siano, e li in caso di autenticazione avvenuto puoi fare in questo modo:
    Codice PHP:
    $_SESSION['username']=$username
    poi nelle altre pagine puoi reperire l'email in questo modo:

    Codice PHP:
    $username=$_SESSION['username']; 

    Ovviamente non dimenticarti che quando utilizzi le sessioni, prima di utilizzarel devi utilizzare la funzione_
    Codice PHP:
    session_start(); 
    che serve appunto per inizializzare una sessione, e senza di essa non funzionerebbe.
    CODENCODE \ Branding \ Design \ Marketing
    www.codencode.it

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    95
    in invia_articolo.php ho

    <?php
    session_start();
    include 'config/db.php';
    $nomeTabella = $tbl_prefix."articoli";
    $nomeTabellaUt = $tbl_prefix."utenti";

    $titolo = addslashes($_POST['titolo']);
    $articolo = addslashes($_POST['articolo']);
    $email = $_SESSION['username'];


    $queryInsert = "INSERT INTO $nomeTabella (titolo, articolo, username, data_ins) VALUES ('$titolo', '$articolo', '$email', NOW());";
    $sql = mysql_query($queryInsert);

    //puoi inviare un solo articolo per concorso
    $queryDoppioni = "SELECT * FROM $nomeTabella WHERE username = '$email'";
    $sqlDoppioni = @mysql_query($queryDoppioni);
    if (($sqlDoppioni) AND (mysql_num_rows($sqlDoppioni) == 0))
    {
    $queryInsert = "INSERT INTO $nomeTabella (titolo, articolo, username, data_ins) VALUES ('$titolo', '$articolo', '$email', NOW());";
    $sql = mysql_query($queryInsert);
    }
    else

    // La query va a buon fine o meno ?…
    if ($sqlDoppioni)
    {
    $messaggio = "E' possibile inviare un solo articolo per concorso attivo. Ci risulta che lei ha gia’ inviato un articolo.";
    die();
    }
    //fine


    //------------------
    if ($queryInsert)
    $messaggio = "Grazie per averci inviato il tuo articolo.

    Per tornare in Home Page clicca qui";
    else
    $messaggio = "Ci sono problemi nell'invio dell'articolo, ci scusiamo del disagio e la invitiamo a provare piu' tardi.";
    include("standard.php");
    ?>

    _________________
    in checkuser ho:

    <?php
    session_start();
    session_regenerate_id();
    include 'config/db.php';

    $tabellaUtenti = $tbl_prefix."utenti";

    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string($_POST['password']);


    if((!$username) || (!$password))
    {
    $messaggio = "Per accedere è necessario immettere username e password.

    Per tornare in home page clicca qui";
    include 'standard.php';
    die();
    }

  9. #9
    Utente di HTML.it L'avatar di Nazza97
    Registrato dal
    Apr 2012
    Messaggi
    200
    Secondo me basta creare una nuova tabella e quando viene inserito un articolo questo viene modificato in 1(ad esempio).

    Prendi la sessione del login dell'utente e fai così :

    tabella1 = Dove viene inserito 0 o 1

    Codice PHP:
    <?php
    $nome_di_login 
    $_SESSION['username'];
    $a1 mysql_query("SELECT tabella1 FROM tabella_utenti WHERE username='$nome_di_login'");
    $h1 mysql_result($a1,0);
    if(
    $h1 == "0"){
    echo (
    "Posso inserire il post.");
    }else{
    echo (
    "Non Posso inserire il post.");
    }
    Nazza

  10. #10
    Ma in checkuser mi auguro che farai dei controlli, nel senso che verifichi se in una tabella del db è presente l'utente che si sta loggando.
    Altrimenti che login è?
    CODENCODE \ Branding \ Design \ Marketing
    www.codencode.it

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.