Visualizzazione risultati 1 fino 7 di 7

Discussione: Comandi giusti ma tabella comunque vuota. Mysql e php

  1. #1
    Guest

    Predefinito Comandi giusti ma tabella comunque vuota. Mysql e php

    Salve a tutti, principalmente stavo cercando di creare un sistema di registrazione all'interno del mio sito. La connessione avviene, ne sono sicuro al 90% Perchè prima mi dava un errore che ora ho risolto, il problema ora è che: quando io inserisco il comando per inserire nella tabella (già creata) i dati non inserisce nulla.
    Qua sotto lascio il codice sorgente. il file pass.php specificato nell'include serve solo per comodità per la connessione al database mysql.

    Codice PHP:
    <?php
    include "DB/pass.php";

    $nick = $_POST['nick'];
    $email = $_POST['email'];
    $pass = md5($_POST['pass']);
    $id = md5($email);

    echo
    "nome: {$nick} <br> email {$email} <br> password {$pass}";

    $con=mysqli_connect("localhost","$DbUser","$DbPassword","$DbConn");

    if (
    mysqli_connect_errno()) {
    echo
    "Failed to connect to MySQL: " . mysqli_connect_error();
    }
    $query="INSERT INTO 'reg' ('ID', 'nick', 'email', 'pass')
    VALUES ('
    $id', '$nick', '$email', '$pass')";

    $result=mysql_query($query,$con);

    if(
    $result==1) die("errore registrazione");

    else
    {
    echo
    "registrazione effettuata con successo";
    }
    mysqli_close($con);
    ?>

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,247

    Predefinito

    Prova eliminando gli apici nel nome della tabella. Se vuoi metterli, devi mettere questi: ` (che non sono i singoli apici normali).

    Se ancora non va, fai la echo di $query, e prova la query stampata incollandola su phpMyAdmin

    Ciao!
    Ultima modifica di alemoppo : 13-10-2014 alle ore 15.34.38

  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    Prova eliminando gli apici nel nome della tabella. Se vuoi metterli, devi mettere questi: ` (che non sono i singoli apici normali).

    Se ancora non va, fai la echo di $query, e prova la query stampata incollandola su phpMyAdmin

    Ciao!
    Allora, il problema era appunto gli appendici nella tabella e nei vari 'ID' , 'nick', 'email', 'pass'. Se io uso come query sql INSERT INTO `reg` (`ID`, `nick`, `email`, `pass`)
    VALUES ('$id', '$nick', '$email', '$pass')

    Mi inserisce appunto $id ecc nella tabella, il problema ora riguarda soltanto il php a quanto pare, dato che in ogni caso se provo a compilare il form e a inviare i dati, io visualizzo correttamente grazie al comando echo "nome: {$nick} <br> email {$email} <br> password {$pass}"; i dati, ma poi nel database non viene visualizzato nulla in ogni caso.

  4. #4
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,247

    Predefinito

    Hai provato come ti ho detto?

    Ciao!

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    Hai provato come ti ho detto?

    Ciao!
    Si, e nella query sql di phpmyadmin funziona perfettamente, con
    Codice PHP:
    INSERT INTO `reg` (`ID`, `nick`, `email`, `pass`)
    VALUES ('$id', '$nick', '$email', '$pass')
    Ma non funziona comunque se inserito in $query

  6. #6
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,247

    Predefinito

    Non avevo visto, ma in tutto il codice hai usato mysqli, mentre per eseguire hai usato mysql (mysql_query()). Dovresti usare mysqli_query()

    Ciao!

  7. #7
    Guest

    Predefinito

    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    Non avevo visto, ma in tutto il codice hai usato mysqli, mentre per eseguire hai usato mysql (mysql_query()). Dovresti usare mysqli_query()

    Ciao!
    Ok, cambiato anche mysqli ma non cambia nulla siccome non funziona ugualmente, purtroppo.
    Per farla breve, questo è il codice attuale, ho aggiunto anche il controllo per vedere che la query fosse corretta anche con il php e lo è. In breve, questo è il codice e non so dove sbattere la testa.

    Codice PHP:
    <?php
    include "DB/pass.php";

    $nick = $_POST['nick'];
    $email = $_POST['email'];
    $pass = md5($_POST['pass']);
    $id = md5($email);

    echo
    "nome: {$nick} <br> email {$email} <br> password {$pass}";

    $con=mysqli_connect("localhost","$DbUser","$DbPassword","$DbConn");

    if (
    mysqli_connect_errno()) {
    echo
    "Failed to connect to MySQL: " . mysqli_connect_error();
    }
    $query="INSERT INTO `reg` (`ID`, `nick`, `email`, `pass`)
    VALUES ('
    $id', '$nick', '$email', '$pass')";

    $result=mysqli_query($con, $query);

    echo
    "<br><br>";
    echo
    $query;
    echo
    "<br><br>";

    mysqli_close($con);

    echo
    "Chiusa connessione";
    ?>

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •