Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Problema MySQL e oggetti PHP

    Salve a tutti, ho un problema: dovrebbe essere eseguita una query ma non funziona e non mi appare nessun messaggio di errore.

    Ho 3 diversi file:

    connection.php
    Codice PHP:
    <?php

    $host 
    "localhost";
    $name "database";
    $user "root";
    $pass "";

    $db "";

    try
    {
        
    $db mysql_connect ($host$user$pass);
        
    mysql_select_db ($name$db);
    }
    catch (
    Exception $e)
    {
        die (
    "Si è verificato un errore durante la connessione al database");
    }

    ?>
    index.php
    Codice PHP:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
            <title></title>
        </head>
        <body>
            <?php

            
    include ("classes/objects.php");
            include (
    "db/connection.php");

            
    $utente = new Utente();
            
    $utente->setNick("UnknownSoldier");
            
    $utente->setPassword("asoe");
            
    $utente->setAvatar("bho");
            
    $utente->setSitoweb("www.google.com");
            
    $utente->setEmail("thelizard.king@hotmail.it");
            
    $utente->setPemail(0);
            
    $utente->setNome("Bah");
            
    $utente->setCognome("Buh");
            
    $utente->setDatanascita(date("aaaa/MM/gg hh:mm:ss"));
            
    $utente->setHobby("Musica rock e viaggiare");
            
    $utente->setDescrizione("Cazzi mieiiiiiiiiiiiiiiiiiiiiiiii");
            
    $utente->setOccupazione("Sre");
            
    $utente->setPinf(0);

            
    $utente->save ($db);

            
    mysql_close ($db);

            
    ?>
        </body>
    </html>
    objects.php in cui c'è la classe Utente
    Codice PHP:
    ...
        public function 
    save ($db)
        {
            try
            {
                include (
    "DFEncryptor.php");

                
    $encpassword DFEncryptor::encrypt ($this->password6);
                
    mysql_query ("INSERT INTO utenti (nick, password, avatar, dataregistrazione, sitoweb, email, pemail, nome, cognome, " .
                
    "datanascita, hobby, descrizione, occupazione, pinf) VALUES ('$this->nick', '$encpassword', '$this->avatar', 'now()', " .
                
    "'$this->sitoweb', '$this->email', '$this->pemail', '$this->nome', '$this->cognome', '$this->datanascita', " .
                
    "'$this->hobby', '$this->descrizione', $this->occupazione', '$this->pinf')"$db);
            }
            catch (
    Exception $e)
            {
                die (
    "Errore durante il salvataggio");
            }
        }
    ... 
    In connection.php effettuo la connessione e uso la variabile $db come connessione.
    Dopodichè passo $db al metodo save() della classe Utente.
    Non viene lanciato alcun errore eppure la tabella MySQL rimane vuota... cos'è che sbaglio?

  2. #2
    Nessuna delle funzioni mysql_* che stai utilizzando solleva delle eccezioni. I bloccho try{} che hai programmato sono inutili.

    Ti suggerisco di riscrivere il codice seguendo i suggerimenti del manuale ufficiale. Ad esempio:

    http://www.php.net/mysql_connect Example #1 mysql_connect() example
    http://www.php.net/mysql_query Example #1 Invalid Query

    Inoltre, in fase di sviluppo ti suggerisco di abilitare la visualizzazione di tutti gli errori.

  3. #3
    Originariamente inviato da filippo.toso
    Nessuna delle funzioni mysql_* che stai utilizzando solleva delle eccezioni. I bloccho try{} che hai programmato sono inutili.

    Ti suggerisco di riscrivere il codice seguendo i suggerimenti del manuale ufficiale. Ad esempio:

    http://www.php.net/mysql_connect Example #1 mysql_connect() example
    http://www.php.net/mysql_query Example #1 Invalid Query

    Inoltre, in fase di sviluppo ti suggerisco di abilitare la visualizzazione di tutti gli errori.
    Scusa ma non riesco a capire cos'è che sbaglio. Per quanto riguarda la query, non mi sembra di aver commesso errori, anche perchè ho sempre eseguito query in questo modo ed ha sempre funzionato o_O

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    A una prima occhiata vedo una funzione now() di mysql messa tra apici e un campo di nome password che sarebbe meglio rinominare.

  5. #5
    Ho provato ad eliminare gli apici che racchiudono now() ma non cambia nulla. Sinceramente non ho capito cosa intendi per rinominare quel campo password

  6. #6
    Raga alla fine l'errore era un cazzo di apice che mancava XD L'ho scoperto grazie alla funzione mysql_error :P

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.