Visualizzazione risultati 1 fino 9 di 9

Discussione: Problema nel collegarmi al database (era "Problemi con script")

  1. #1
    Guest

    Predefinito Problema nel collegarmi al database (era "Problemi con script")

    ho inserito le tabelle nel mio database ed ho provato ad effettuare la regitrazione sul mio sito. Purtroppo mi da errore di connessione al server ma i dati mi sembra di averli messi giusti!! Devo fare qualcosa nel database ho devo cercare altrove l'errore?

  2. #2
    L'avatar di bastardofuori
    bastardofuori non è connesso AlterGuru
    Data registrazione
    04-04-2006
    Messaggi
    1,535

    Predefinito

    E' probabile che i dati che hai inserito sono errati.

    Questi sono i dati da inserire:
    Codice:
    $db_host="localhost";       
    $db_user="nomeutente";       
    $db_pass="password";             
    $db_name="my_nomeutente";
    PS fai una ricerca nel forum, se n'è già parlato

    Ciao ciao

  3. #3
    Guest

    Predefinito re:problemi script connessione mysql

    ti posto il file php per la connessione e la registrazione dati in 2 messaggi

    parte 1
    Codice PHP:
    <?

    class authlib {

    var
    $db_host = "localhost";
    var
    $db_user = "nohow82";
    var
    $db_pass = "++++++++++";
    var
    $db_name = "my_nohow82";

    function
    register ($username, $password, $password2, $name, $email, $citta, $professione, $telefono) {

    if (!
    $username || !$password || !$password2 || !$name || !$email || !$citta || !$professione || !$telefono) {

    return
    $this->error[14];

    }

    else {

    if (!
    eregi("^[a-z ]+$", $name)) {

    return
    $this->error[8];

    }

    if (!
    eregi("^([a-z0-9]+)([._-]([a-z0-9]+))*[@]([a-z0-9]+)([._-]([a-z0-9]+))*[.]([a-z0-9]){2}([a-z0-9])?$", $email)) {

    return
    $this->error[4];

    }

    if (!
    eregi("^[a-z]+$", $citta)) {

    return
    $this->error[10];

    }

    if (
    $professione != "Studente" && $professione != "Artigiano" && $professione != "Operaio" && $professione != "Impiegato"
    && $professione != "Quadro" && $professione != "Funzionario" && $professione != "Dirigente" && $professione != "Pensionato"
    && $professione != "Insegnante" && $professione != "Magistrato" && $professione != "Medico/dentista" && $professione != "Notaio/avvocato" && $professione != "Architetto/ingegnere"
    && $professione != "Consulente" && $professione != "Giornalista" && $professione != "Artista" && $professione != "Sportivo"
    && $professione != "Veterinario" && $professione != "Geometra" && $professione != "Agente di cambio" && $professione
    != "Agente assicurativo" && $professione != "Consulente finanziario" && $professione != "Militare" &&
    $professione != "Casalinga" && $professione != "Tecnico installatore" && $professione != "Manutetore Navale" && $professione != "Altro") {

    return
    $this->error[11];

    }

    if (!
    eregi("^[a-z0-9 ]+$", $telefono)) {

    return
    $this->error[9];

    }

    if (
    strlen($username) < 3) {

    return
    $this->error[1];

    }

    if (
    strlen($username) > 20) {

    return
    $this->error[2];

    }

    if (!
    ereg("^[[:alnum:]_-]+$", $username)) {

    return
    $this->error[3];

    }

    if (
    $password != $password2) {

    return
    $this->error[0];

    }

    if (
    strlen($password) < 3) {

    return
    $this->error[5];

    }

    if (
    strlen($password) > 20) {

    return
    $this->error[6];

    }

    if (!
    ereg("^[[:alnum:]_-]+$", $password)) {

    return
    $this->error[7];

    }

    mysql_connect($this->db_host, $this->db_user, $this->db_pass);
    mysql_select_db($this->db_name);

    $query = mysql_query("select id from authlib_login where username = '$username'");
    $result = mysql_num_rows($query);

    if (
    $result > 0) {

    mysql_close();

    return
    $this->error[12];

    }

    $query = mysql_query("select id from authlib_data where email = '$email'");
    $result = mysql_num_rows($query);

    if (
    $result > 0) {

    mysql_close();

    return
    $this->error[13];

    }

    $hash = md5($this->secret.$username);

    $is_success = mysql_query("insert into authlib_confirm values ('$hash', '$username', '$password', '$name', '$email', '$citta', '$professione', '$telefono', now())");

    mysql_close();

    if (!
    $is_success) {

    return
    $this->error[16];

    }

    mail($email, "Member Hai voglia di scrivere", "Grazie $name, per esserti registrato al sito nohow82.altervista.org.\nQuesti sono i dati che hai inserito :\n
    Name:
    $name
    Email:
    $email
    Città:
    $citta
    Professione:
    $professione
    Telefono:
    $telefono
    Username:
    $username
    Password:
    $password\n
    Per confermare la tua registrazione clicca sul link qui di seguito \n
    http://nohow82.altervista.org/confirm.php?hash=
    $hash&username=$username\n
    Se non sei interessato alla registrazione, cancella questa mail senza confermare.\n
    Assistenza utenti Hai voglia di scrivere"
    , "From: Lo staff Hai voglia di scrivere");
    return
    2;

    }

    }

    function
    login ($username, $password) {

    if (!
    $username || !$password) {

    return
    $this->error[14];

    }

    else {

    if (!
    eregi("^[[:alnum:]_-]+$", $username)) {

    return
    $this->error[3];

    }

    if (!
    eregi("^[[:alnum:]_-]+$", $password)) {

    return
    $this->error[7];

    }

    mysql_connect($this->db_host, $this->db_user, $this->db_pass);
    mysql_select_db($this->db_name);

    $query = mysql_query("select id from authlib_login where username = '$username' and password = '$password'");
    $result = mysql_num_rows($query);

    mysql_close();

    if (
    $result < 1) {

    return
    false;

    }

    else {

    list (
    $id) = mysql_fetch_row($query);

    $hash = md5($username.$this->secret);

    setcookie("hello", "$username:$hash:$id", time()+3600);

    return
    2;

    }

    }

    }

    function
    is_logged () {

    global
    $hello;

    $session_vars = explode(":", $hello);

    $hash = md5($session_vars[0].$this->secret);

    if (
    $hash != $session_vars[1]) {

    return
    false;

    }

    else {

    return array(
    $session_vars[0], $session_vars[2]);

    }

    }

    function
    logout () {

    setcookie("hello");

    header("Location: $this->logout_url");

    }

    function
    edit_retrieve ($id) {

    mysql_connect($this->db_host, $this->db_user, $this->db_pass);
    mysql_select_db($this->db_name);

    $query = mysql_query("select * from authlib_data where id = '$id'");

    mysql_close();

    list (
    $id, $name, $email, $citta, $professione, $telefono) = mysql_fetch_row($query);

    return array(
    $name, $citta, $professione, $telefono, $email);

    }

    function
    edit ($id, $name, $citta, $professione, $telefono) {

    if (!
    $name || !$citta || !$professione || !$telefono) {

    return
    $this->error[14];

    }

    else {

    if (!
    eregi("^[a-z ]+$", $name)) {

    return
    $this->error[8];

    }

    if (!
    eregi("^[a-z0-9 ]+$", $telefono)) {

    return
    $this->error[9];

    }

    if (!
    eregi("^[a-z ]+$", $citta)) {

    return
    $this->error[10];

    }

    if (
    $professione != "Studente" && $professione != "Artigiano" && $professione != "Operaio" && $professione != "Impiegato"
    && $professione != "Quadro" && $professione != "Funzionario" && $professione != "Dirigente" && $professione != "Pensionato"
    && $professione != "Insegnante" && $professione != "Magistrato" && $professione != "Medico/dentista" && $professione != "Notaio/avvocato" && $professione != "Architetto/ingegnere"
    && $professione != "Consulente" && $professione != "Giornalista" && $professione != "Artista" && $professione != "Sportivo"
    && $professione != "Veterinario" && $professione != "Geometra" && $professione != "Agente di cambio" && $professione
    != "Agente assicurativo" && $professione != "Consulente finanziario" && $professione != "Militare" &&
    $professione != "Casalinga" && $professione != "Tecnico installatore" && $professione != "Manutetore Navale" && $professione != "Altro") {

    return
    $this->error[11];

    }

    mysql_connect($this->db_host, $this->db_user, $this->db_pass);
    mysql_select_db($this->db_name);

    $query = mysql_query("update authlib_data set name = '$name', citta = '$citta', professione = '$professione', telefono = '$telefono' where id = '$id'");

    mysql_close();

    if (!
    $query) {

    $this->error[20];

    }

    return
    2;

    }

    }

    function
    confirm ($hash, $username) {

    if (!
    $hash || !$username) {

    return
    $this->error[14];

    }
    Ultima modifica di funcool : 08-05-2007 alle ore 09.32.53

  4. #4
    Guest

    Predefinito re:problemi script connessione mysql

    parte 2

    Codice PHP:
    else {

    mysql_connect($this->db_host, $this->db_user, $this->db_pass);
    mysql_select_db($this->db_name);

    $query = mysql_query("select * from authlib_confirm where mdhash = '$hash' AND username = '$username'");
    $result = mysql_num_rows($query);

    if (
    $result < 1) {

    mysql_close();

    return
    $this->error[15];

    }

    list(
    $hd,$username,$password,$name,$email,$citta,$professione,$telefono) = mysql_fetch_row($query);

    $is_success_first = mysql_query("insert into authlib_login (username, password) values ('$username', '$password')");

    if (
    $is_success_first) {

    $is_success_second = mysql_query("insert into authlib_data (name, email, citta, professione, telefono) values ('$name', '$email', '$citta', '$professione', '$telefono')");

    if (
    $is_success_second) {

    $is_success_third = mysql_query("delete from authlib_confirm where username = '$username'");

    }

    }

    mysql_close();

    if (!
    $is_success_first) {

    return
    $this->error[16];

    }

    if (!
    $is_success_second) {

    @
    mail($email, "Errore in Member Area", "Attenzione, $name, non e' stato possibile inserire i dati al data base \n
    a causa di un errore interno o di inserimento dati. Accedi al tuo account per rimuoverlo e \n
    ripeti la registrazione."
    , "From: Lo staff Hai voglia di scrivere");

    return
    $this->error[17];

    }

    if (!
    $is_success_third) {

    @
    mail($this->webmaster, "Attenzione!!!", "Controlla i tuoi dati $name, c'e' stato un problema di inserimento
    dei dati, ricontrolla ed eventualmente riprova l'operazione."
    , "From: Lo staff Hai voglia di scrivere");

    return
    2;

    }

    @
    mail($email, "Conferma Registrazione", "Grazie, $name per esserti registrato a nohow82.altervista.org.\n Questi sono i tuoi dati:\n
    Name:
    $name
    Email:
    $email
    Città:
    $citta
    Professione:
    $professione
    Telefono:
    $telefono
    Username:
    $username
    Password:
    $password\n
    Grazie per esserti registrato.\n
    Assistenza Utenti Hai voglia di scrivere"
    , "From: Lo staff Hai voglia di scrivere");

    return
    2;

    }

    }

    function
    conf_flush () {

    mysql_connect($this->db_host, $this->db_user, $this->db_pass);
    mysql_select_db($this->db_name);

    $query = mysql_query("delete from authlib_confirm where date_add(date, interval 2 day) < now()");

    mysql_close();

    if (!
    $query) {

    return
    $this->error[18];

    }

    return
    2;

    }

    function
    lostpwd ($email) {

    if (!
    $email) {

    return
    $this->error[14];

    }

    mysql_connect($this->db_host, $this->db_user, $this->db_pass);
    mysql_select_db($this->db_name);

    $query = mysql_query("select authlib_login.password, authlib_login.username from authlib_login, authlib_data where authlib_data.email = '$email' and authlib_login.id = authlib_data.id");
    $result = mysql_num_rows($query);

    mysql_close();

    if (
    $result < 1) {

    return
    $this->error[19];

    }

    list(
    $password, $username) = mysql_fetch_row($query);

    @
    mail($email, "Recupero dati member Hai voglia di scrivere", "Gentile $name,\nquesti sono i tuoi dati di accesso:\n
    \nUsername:
    $username
    \nPassword:
    $password
    \n Conserva questi dati in un posto sicuro per una prossima consultazione\n
    Cordialmente\n
    Assistenza Utenti hai voglia di scrivere"
    , "From: Lo staff Hai voglia di scrivere");

    return
    2;

    }

    function
    chemail ($id, $email, $email2) {

    if (!
    eregi("^([a-z0-9]+)([._-]([a-z0-9]+))*[@]([a-z0-9]+)([._-]([a-z0-9]+))*[.]([a-z0-9]){2}([a-z0-9])?$", $email)) {

    return
    $this->error[4];

    }

    mysql_connect($this->db_host, $this->db_user, $this->db_pass);
    mysql_select_db($this->db_name);

    $query = mysql_query("select id from authlib_data where email = '$email'");
    $result = mysql_num_rows($query);

    if (
    $result > 0) {

    list(
    $id_from_db) = mysql_fetch_row($query);

    if (
    $id_from_db != $id) {

    mysql_close();

    return
    $this->error[13];

    }

    return
    $this->error[23];

    }

    $mdhash = md5($id.$email.$this->secret);

    $query = mysql_query("insert into authlib_confirm_email values ('$id', '$email', '$mdhash', now())");

    if (!
    $query) {

    mysql_close();

    $this->error[20];

    }

    @
    mail($email, "Member Area, Cambio email", "Gentile Member, hai richiesto il cambio dell'email nel database.
    Stiamo accertando la validita' della email\n
    clicca qui per la conferma: http://nohow82.altervista.org/confirm_email.php?mdhash=
    $mdhash&id=$id&email=$email
    \n Grazie!
    Assistenza Utenti Hai voglia di scrivere"
    );

    return
    2;

    }

    function
    confirm_email($id, $email, $mdhash) {

    if (!
    $id || !$email || !$mdhash) {

    return
    $this->error[14];

    }

    else {

    mysql_connect($this->db_host, $this->db_user, $this->db_pass);
    mysql_select_db($this->db_name);

    $query = mysql_query("select * from authlib_confirm_email where id = '$id' AND email = '$email' AND mdhash = '$mdhash'");
    $result = mysql_num_rows($query);

    if (
    $result < 1) {

    mysql_close();

    return
    $this->error[15];

    }

    $update = mysql_query("update authlib_data set email = '$email' where id = '$id'");
    $delete = mysql_query("delete from authlib_confirm_email where email = '$email'");

    mysql_close();

    return
    2;

    }

    }

    function
    email_flush () {

    mysql_connect($this->db_host, $this->db_user, $this->db_pass);
    mysql_select_db($this->db_name);

    $query = mysql_query("delete from authlib_confirm_email where date_add(date, interval 2 day) < now()");

    mysql_close();

    if (!
    $query) {

    return
    $this->error[18];

    }

    return
    2;

    }

    function
    chpass ($id, $password, $password2) {

    if (
    $password != $password2) {

    return
    $this->error[0];

    }

    else {

    if (
    strlen($password) < 5) {

    return
    $this->error[5];

    }

    if (
    strlen($password) > 20) {

    return
    $this->error[6];

    }

    if (!
    ereg("^[[:alnum:]_-]+$", $password)) {

    return
    $this->error[7];

    }

    mysql_connect($this->db_host, $this->db_user, $this->db_pass);
    mysql_select_db($this->db_name);

    $query = mysql_query("update authlib_login set password = '$password' where id = '$id'");

    mysql_close();

    if (!
    $query) {

    return
    $this->error[21];

    }

    return
    2;

    }

    }

    function
    delete($id) {

    mysql_connect($this->db_host, $this->db_user, $this->db_pass);
    mysql_select_db($this->db_name);

    $query = mysql_query("delete from authlib_login where id = '$id'");
    $query = mysql_query("delete from authlib_data where id = '$id'");

    mysql_close();

    return
    2;

    }

    var
    $error = array
    (
    "Le Passwords non sono uguali", //0
    "Username non valido. inserisci almeno 3 caratteri.", //1
    "Username non valido. inserisci non oltre 11 caratteri.", //2
    "Username con caratteri non validi.", //3
    "Email non valida.", //4
    "Password non valido. inserisci almeno 3 caratteri.", //5
    "Password non valido. inserisci non oltre 11 caratteri.", //6
    "Password con caratteri non validi.", //7
    "Nome con caratteri non validi.", //8
    "Telefono con caratteri non validi.", //9
    "Citta' con caratteri non validi.", //10
    "Professione opzione obligatoria.", //11
    "Username gia' esistente nel database.", //12
    "Username ed email gia' esistente.", //13
    "Alcuni campi sono stati lasciati vuoti.", //14
    "Combinazione ID e Username non corretta, o member cancellato.", //15
    "Connessione al Database fallita, riprova piu' tardi.", //16
    "Le tue info sono state inserite, ma c'e' stato un errore temporaneo, clicca qui <a href=\"index.html\">login</a> e rimuovi il tuo account e ripeti la registrazione.", //17
    "La registrazione non e' andata a buon fine, ripetere.", //18
    "La username non corrisponde all'email.", //19
    "Non e' stata possibile aggiornare i tuoi dati per un errore interno al database.", //20
    "Non e' stata possibile aggiornare la tua password per un errore interno al database.", //21
    "L'email non esiste.", //22
    "L'email che hai inserito e' uguale a quella gia' nel database, non e' stato eseguito alcun aggiornamento." //23
    );

    var
    $logout_url = "index.html";

    }

    $authlib = new authlib;

    ?>
    Ultima modifica di funcool : 08-05-2007 alle ore 09.33.30

  5. #5
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Hai attivato il database?

    P.S.: La prossima volta, quando scrivi del codice, utilizza i tag appositi.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  6. #6
    Guest

    Predefinito Re

    si il database dovrebbe essere attivato, ho sottoscritto il livello 4 ed ho crato le tabelle. Provo a registrarmi sul mio sito, ma nulla . Non mi riesce e dato che non sono un genio non riesco a capire dove sbaglio!!!

  7. #7
    L'avatar di bastardofuori
    bastardofuori non è connesso AlterGuru
    Data registrazione
    04-04-2006
    Messaggi
    1,535

    Predefinito

    Che errori ti restituisce?

  8. #8
    Guest

    Predefinito re:problemi database

    Praticamento mi si apre una pagina web (del mio sito) dove mi dice connessione al database fallita, riprova più tardi . Il comando con questo messaggio è inserito nello script.

  9. #9
    Guest

    Predefinito

    Dopo ogni mysql_connect e mysql_select_db, prima del ; finale, prova ad anteporre un or die(mysql_error())

    Ad esempio mysql_connect(bla bla bla) or die(mysql_error());
    (il punto e virgola va alla fine)


    Ciaoo!!

Regole di scrittura

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