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

    [PHP/MYSQL] AIUTO per commenti

    Sul mio sito (http://www.andreapaiola.it) sto implementando un servizio di commenti (chiunque vuole può mettere un commento) in PHP e MySQL.

    dilatua.php
    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it">
    <head>
    <link rel="shortcut icon" href="http://www.webalice.it/andrea.paiola/favicon.ico"></link>
    <title>Sito di NEXUS6 alias Andrea Paiola</title>
    <meta http-equiv="Content-Type" content="text/html; charset= iso-8859-1" />
    <meta http-equiv="Content-Language" content="it" />
    <meta name="keywords" content="2D,3D,accessibilità,xhtml 1.1,css,fotografia,NEXUS6,Andrea Paiola,validato,W3C,PHP" />
    <meta name="description" content="Sito di NEXUS6 alias Andrea Paiola accessibile e validato dal W3C" />
    <style type="text/css" media="screen">
    @import url(stile.css);
    </style>
    </head>
    <body>
    <div id="pagina">
    <?php
    include "ricerca.html";
    ?>
    <?php
    include "menu.html";
    ?>
    <div id="corpo">
    
    
    Non usatelo! ancora in fase sperimentale!!!</p>
    <div>
    <?
    include ("visualizzacommenti.php");
    ?>
    </div>
    <div>
    <?
    include ("aggiungicommento.php");
    ?>
    </div>
    </div>
    <?php
    include "piede.html";
    ?>
    </div>
    </body>
    </html>
    visualizzacommenti.php
    codice:
    <? include("config.inc.php");
    $db = mysql_connect($db_host, $db_user, $db_password);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($db_name, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    $result = mysql_query("SELECT * FROM commenti ORDER BY `data` DESC LIMIT 30 ");
    while ($row = mysql_fetch_array($result)) {
    echo $row["data"];
    echo $row["commento"];
    }
    mysql_close($db);
    ?>
    aggiungicommento.php
    codice:
    <form method=post action=aggiungicommento.php>
    
    
    Commento:</p>
    
    
    <input type=text size=50 name=commento></p>
    <input type=submit value=Inserisci> </form>
    <? include("config.inc.php");
    if (trim($commento) == ""):
    echo "Il campo Commento deve essere riempito!";
    else:
    $commento = addslashes(stripslashes($commento));
    $commento = str_replace("<", "&lt;", $commento);
    $commento = str_replace(">", "&gt;", $commento);
    $db = mysql_connect($db_host, $db_user, $db_password);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    $query = "insert into commenti (data, commento) values (currentdate,commento)";
    echo $query;
    mysql_query($query ,$db) or die (mysql_error()); 
    mysql_close($db); endif;
    ?>
    e quando cerco di aggiungere un commento mi dice
    No Database Selected e altra roba(vedi allegato)
    la lista dei commenti però me la fa vedere

    Qualcuno mi aiuta?
    Immagini allegate Immagini allegate

  2. #2
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    in aggiungicommento.php manca la selezione del db.

    think simple think ringo

  3. #3
    Originariamente inviato da marketto
    in aggiungicommento.php manca la selezione del db.

    Cioè???
    Come si fa la selezione?
    il file config.inc.php è lo stesso

    aspetta forse ho trovato:
    codice:
    mysql_select_db($db_name, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");



  4. #4
    e che cavolo però ha funzionato fino a pochi giorni fa poi hanno aggiornato PHP (4.3.10 ora) e non mi funziona più!
    Questo funziona:
    visualizzacommenti.php
    codice:
    <? include("config.inc.php");
    $db = mysql_connect($db_host, $db_user, $db_password);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($db_name, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    $result = mysql_query("SELECT * FROM commenti ORDER BY `id` DESC LIMIT 100 ");
    while ($row = mysql_fetch_array($result)) {
    $datatext = "
    
    ".date ("d-m-Y", strtotime ($row["data"]))."
    ";
    $datatext = nl2br($datatext);
    $commentotext = $row["commento"]."
    
    </p>";
    $commentotext = nl2br($commentotext);
    echo $datatext;
    echo $commentotext;
    }
    mysql_close($db);
    ?>
    questo invece no:
    aggiungicommento.php:
    codice:
    <form method="post" action="dilatua.php">
    	
    
    Commento: <input name="incommento" size="50"></input>
    	<input type="submit" value="Inserisci"></input></p>
    </form>
    
    
    Puoi inserire un massimo di 50 caratteri.</p>
    <? include("config.inc.php");
    if (trim($incommento) == ""):
    echo "
    
    Il campo Commento deve essere riempito!</p>";
    else:
    $incommento = addslashes(stripslashes($incommento));
    $incommento = str_replace("<", "&lt;", $incommento);
    $incommento = str_replace(">", "&gt;", $incommento);
    $db = mysql_connect($db_host, $db_user, $db_password);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($db_name, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    $sql="INSERT INTO commenti (data, commento) VALUES(NOW(),'".$incommento."')";
    mysql_db_query($db_name,$sql,$db);
    mysql_close($db);
    function redirect($url,$timeout=0) 
    
    {
    
        echo "\n<script language=\"javascript\">\n";
    
        if($timeout == 0) 
    
        {
    
            echo "  window.location=\"$url\";\n";
    
        }
    
        else 
    
        {
    
            echo "string=\"\", timeout = ".($timeout*10).";\n";
    
            echo "function dorefresh() {\n";
    
            echo "  window.status=\"\"+string;"; 
    
            echo "  string = string + \" \";";
    
            echo "  timerID = setTimeout(\"dorefresh();\", 100);\n";
    
            echo "  if (timeout > 0) {";
    
            echo "    timeout -= 1;\n";
    
            echo "  } else {\n";
    
            echo "    clearTimeout(timerID);\n";
    
            echo "    window.status=\"\";\n";
    
            echo "    window.location=\"$url\";\n";
    
            echo "  }\n";
    
            echo "}\n";
    
            echo "dorefresh();";
    
        }
    
        echo "\n</script>\n";
    
    }
    redirect("grazie.php", 0);
    endif;
    ?>
    Può essere il cambio di versione?
    O forse sono un e non funzionava già prima?
    Oppure sono un pasticcione e ho cambiato qualcosa...
    http://www.andreapaiola.it/dilatua.php

  5. #5

  6. #6

  7. #7

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.