• User Attivo

    @vnt54 said:

    (stringa di connessione,nome Db),così si capisce poco.
    :fumato:

    si capisce poco ?? 😢

    [php]
    <?php
    session_start();
    // Dati connessione al database
    $db_host = 'xxx';
    $db_utente = 'xxx';
    $db_password = 'xxx';
    $db_nomedb = 'yyy';

    // Effettua la connessione al database
    $dbh = @mysql_connect ($db_host, $db_utente, $db_password) or die ("Errore! Impossibile connettersi al Server $db_host: ");
    @mysql_select_db($db_nomedb) or die ("Impossibile selezionare il database <font color="red"> $db_nomedb </font>");

    ?>
    [/php]

    Va bene così ?


  • User Attivo

    Se non erro manca Engine=MyISAM nella query.
    prova.
    :fumato:


  • User

    La query è corretta,
    dovresti controllare quando la esegui che problema ti segnala.


  • User Attivo

    @aernews said:

    La query è corretta,
    dovresti controllare quando la esegui che problema ti segnala.
    non mi segnala nessun problema, ma la tabella nel database non viene creata


  • User

    Che codice usi per lanciare la query?
    L'utente che si connette ha i diritti per creare tabelle?


  • User Attivo

    @aernews said:

    Che codice usi per lanciare la query?
    L'utente che si connette ha i diritti per creare tabelle?
    No vabbè quello non centra... ho aggiustato così
    [php]
    $query2 = mysql_query("CREATE TABLE new
    (id int(11) NOT NULL auto_increment,
    user varchar(20) NOT NULL,
    risposta varchar(100) NOT NULL default '',
    PRIMARY KEY (id)
    )
    TYPE=MyISAM;") or die ("Impossibile creare la tabella " .mysql_error() );
    mysql_query($query2,$db);
    [/php]
    e funziona... va bene
    solo che devo cercare di far creare tabelle con nomi diversi ma con la stessa struttura in automatico, quindi avevo pensato così

    [php]
    <textarea id="rispondi" name="rispondi" rows=4 cols=38></textarea>
    $tabella = $_POST['rispondi'];

         $query2 = mysql_query("CREATE TABLE $tabella 
                                (id int(11) NOT NULL auto_increment,
                                 user varchar(20) NOT NULL,
                                 risposta varchar(100) NOT NULL default '',
                                 PRIMARY KEY  (id)
                                ) 
                             TYPE=MyISAM;") or die ("Impossibile creare la tabella " .mysql_error() );
        mysql_query($query2,$db);
        $inserimento = "INSERT INTO $tabella (user,rispondi)";
         $query .= "VALUES('".$user."','".$_REQUEST['risposta']."')";
    

    [/php]
    Funziona tutto solo che non mi crea la tabella con il nome assunto dalla variabile $tabella inviata via POST dall'utente!


  • User Attivo

    Apparte il fatto che inserire in una query del contenuto prelevato da POST senza fare nessuna validazione è da codice penale ;), qui:
    [HTML]<textarea id="rispondi" name="rispondi" rows=4 cols=38></textarea>[/HTML]
    vedo un po' troppe slash prima delle virgolette, le ha messe il forum o le hai tu nel tuo HTML?


  • User Attivo

    @html5today said:

    Apparte il fatto che inserire in una query del contenuto prelevato da POST senza fare nessuna validazione è da codice penale ;), qui:
    [html]<textarea id="rispondi" name="rispondi" rows=4 cols=38></textarea>[/html]vedo un po' troppe slash prima delle virgolette, le ha messe il forum o le hai tu nel tuo HTML?

    Che centrano gli slash... ci sono perchè è integrato codice html in php... cmq sia ho agiustato così e funziona
    [php]
    $crea = mysql_query("CREATE TABLE $user
    (id int(11),
    codice_utente int(11) NOT NULL auto_increment,
    user varchar(20) NOT NULL,
    risposta varchar(100) NOT NULL default '',
    PRIMARY KEY (codice_utente)
    )
    TYPE=MyISAM;") or die ("Impossibile creare la tabella " .mysql_error() );
    mysql_query($crea,$db);
    [/php]
    dove $user l'ho ricavato dall'utente che invia l'articolo quindi deve essere registrato al sito 😉


  • User Attivo

    Scusa ma mi spieghi il senso di un design che prevede la creazione di una tabella per ogni utente che si registra? Immagino che tu non stia prevedendo un alto numero di registrazioni... 😉


  • User Attivo

    @html5today said:

    Scusa ma mi spieghi il senso di un design che prevede la creazione di una tabella per ogni utente che si registra? Immagino che tu non stia prevedendo un alto numero di registrazioni... 😉

    No quel codice viene eseguito ogni volta che un utente diverso inserisce un articolo nel sito, e ogni utente è libero di commentare quell'articolo, quindi si crea un'altra tabella con chiavi esterne per memorizzare i commenti degli utenti per quel determinato articolo.


  • User Attivo

    Quindi crei una tabella per ogni articolo?!? :surprised:


  • User Attivo

    Bhe per il momento è l'unica soluzione che mi viene in mente