• Super User

    @spidermassi said:

    allora, innanzitutto grazie x la risposta.

    Figurati 😄

    @spidermassi said:

    io non ho intenzione al momento di avere utenti registrati, quindi la mia idea è che tu vai sul sito, aggiungi un tuo commento ai locali già presenti o ne aggiungi uno tramite il modulo (che al momento mi manda una mail con tutti i dati e commentio del locale e io smanetto un po una volta ricevuta la mail x creare una pagina nuova html.
    ora io vorrei fare si che al posto di inviarmi la mail il form inviasse le info a un data base che come per magia mi aggiorna la pagina.

    Un form che inserisca un locale in automatico.
    Io lo so fare, ma pecco in sicurezza, dato che non so mettere un captcha 😞 [di norma infatti faccio con registrazione 😛 ]

    @spidermassi said:

    quindi presumo che l'install.php del 3d che mi hai fatto guardare non dovrebbe avere il settaggio con user, password ecc. giusto?

    Che campi vuoi?

    @spidermassi said:

    poi siccome ho 4 criteri di valutazione (al momento da uno a 4 ma vorrei farli da 1 a 10, anche questo non lo vedo troppo semplice da gestire...)

    Dici? 🙂
    Io uso un sistema di valutazione decimale nel mio sito. (lo vedi solo se registrato 😄 )

    Spiega meglio 🙂

    :ciauz:


  • User Newbie

    rieccoci!
    anche con meno sicurezza prediligo la non registrazione perche' io personalemte come utente la trovo fastidiosa. io personalmetne non ho voglia di dovermi registrare a ogni sito che visito.. quindo magari il discorso sicurezza potrebbe essere migliorato una volta che modifico il sito.
    la valutazione in deciamale la vedo bene anch'io ma non volevo avere dei numeri che mostrassero la valutazione ma dei simboli (adesempio le classiche stelline)

    i campi che vorrei utilizzare sarebbero:
    nome
    indirizzo
    citta (la citta la metterei separata visto che sarebbe poi un criterio di ricerca ax zona
    telefono, indirizzo web
    tipologia locale
    costo medio
    e poi i 4 criteri di valutazione

    • una possibile descrizione del locale (giusto 2 righe)

    poi ci sarebbe (se visitato da me personalmente) un commento del sito

    e poi tutti i vari commenti degli utenti.

    esempio:
    nome locale

    indirizzo (via , num civico)
    citta paperopoli
    tel. 02125411255
    tipo: ristorante Marocchino
    costo medio: 25 euro portata pricipale + vino; 35 euro inclusi anche gli antipasti
    **mini descrizione (facoltativa)**Ristorante tipico marocchino situato a due passi dal porto.

    **qualità cibo:**x x x x x
    **servizio:**x x x x x
    **atmosfera:**x x x x x
    rapporto qualità prezzo: x x x x x

    i ns commenti
    bla gfsdjfhsh dgjishyiotryy
    tyyutryu bla bla

    **i vostri commenti **bla bla bla bla
    blabbdjghdfh hihgifhgifghf
    13-06-05 da: Pippo

    bla bla bla bla
    blabbdjghdfh hihgifhgifghf
    15-06-06 da: Pluto

    mi sono spiegato meglio? 🙂 che dici?


  • User Attivo

    @Il_Rappo said:

    Il database è l'ultima cosa.

    Perchè dici che il DB è l'ultima cosa?
    Secondo me è la prima,
    un buon database strutturato permette
    di creare poi anche un sito altrettanto organico non credi?

    Tornando a noi:
    Io creerei 3 Tabelle,

    Ristorante
    ( id_Ristorante
    nome
    ...
    )

    Commenti_utenti
    (
    id_commento_utenti
    id_Ristorante
    Commento
    Autore
    Data
    ...
    )

    Commenti_webmaster
    (
    id_commento_webmaster
    id_Ristorante
    Commento
    Autore
    Data
    ...
    )

    Per scrivere nei database dovresti imparare l'SQL...
    o in alternativa usare Dreamweaver o tools di autocomposizione...
    ma se non sai programmare i PHP è un po'lunghetta anche
    se non impossibile...


  • Super User

    @Dusy said:

    Perchè dici che il DB è l'ultima cosa?
    Secondo me è la prima,
    un buon database strutturato permette
    di creare poi anche un sito altrettanto organico non credi?

    Beh, io di solito prima costruisco sito e poi faccio tutto il database 😄

    Per il caso in questione bastano due tabelle 🙂

    @spidermassi said:

    i campi che vorrei utilizzare sarebbero:
    nome
    indirizzo
    citta (la citta la metterei separata visto che sarebbe poi un criterio di ricerca ax zona
    telefono, indirizzo web
    tipologia locale
    costo medio
    e poi i 4 criteri di valutazione

    • una possibile descrizione del locale (giusto 2 righe)

    poi ci sarebbe (se visitato da me personalmente) un commento del sito

    e poi tutti i vari commenti degli utenti.

    Ok, al posto di quell'install.php quando compare

    
    $sql = 'CREATE TABLE `contatti` ('
            . ' `idc` int(11) NOT NULL default \'0\','
            . ' `nome` varchar(100) NOT NULL default \'\','
            . ' `cognome` varchar(100) NOT NULL default \'\','
            . ' `email` varchar(100) NOT NULL default \'\','
            . ' PRIMARY KEY (`idc`)'
            . ' ) TYPE=MyISAM';
    

    Tu metti questo

    
    $sql = 'CREATE TABLE `locale` ('
            . ' `idl` int(11) NOT NULL default \'0\','
            . ' `nome` varchar(250) NOT NULL default \'\','
            . ' `indirizzo` varchar(250) NOT NULL default \'\','
            . ' `citta` varchar(200) NOT NULL default \'\','
            . ' `telefono` varchar(200) NULL default \'\','
            . ' `web` varchar(200) NULL default \'\','
            . ' `tipo` varchar(200) NOT NULL default \'\','
            . ' `costo` varchar(200) NOT NULL default \'\','
            . ' `valutazione` varchar(200) NOT NULL default \'\','
            . ' `descrizione` text,'
            . ' `commento` text,'
            . ' PRIMARY KEY (`idl`)'
            . ' ) TYPE=MyISAM';
    
    	'CREATE TABLE `commenti` ('
            . ' `nick` varchar(20) NOT NULL default \'\','
            . ' `data` datetime NOT NULL default \'0000-00-00 00:00:00\','
            . ' `testo` text NOT NULL,'
            . ' `voto` int(11) NOT NULL default \'0\','
            . ' `mail` varchar(50) default NULL,'
            . ' `ip` varchar(20) NOT NULL default \'\','
            . ' `locale` int(11) NOT NULL default \'0\','
            . ' PRIMARY KEY (`nick`,`data`)'
            . ' ) TYPE=MyISAM';
    
    
    

    Dovrebbe funzionare 🙂


  • User Attivo

    Bene ma se usi due tabelle e non vuoi utilizzare i log-in
    aggiungi il campo tipo_commento (Commento Utente o Commento Interno)

    'CREATE TABLE commenti ('
    . ' nick varchar(20) NOT NULL default '','
    . ' tipo_commento varchar(1) default NULL,'
    . ' data datetime NOT NULL default '0000-00-00 00:00:00','
    . ' testo text NOT NULL,'
    . ' voto int(11) NOT NULL default '0','
    . ' mail varchar(50) default NULL,'
    . ' ip varchar(20) NOT NULL default '','
    . ' locale int(11) NOT NULL default '0','
    . ' PRIMARY KEY (nick,data)'
    . ' ) TYPE=MyISAM';


  • Super User

    🙂

    Dusy avevo messo questo campo

        . ' `commento` text,'
    

    apposta per il commento da parte dell'autore 🙂

    E l'altra tabella per gli altri commenti


  • User Attivo

    Allora siamo d'accordo 😄


  • User Newbie

    allora,
    vediamo se ho capito..
    creo il mio file install.php

    al momento ho questa pagina per il form:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>segnala locale</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <link href="style.css" rel="stylesheet" type="text/css">
    </head>
    
    <body>
    <table width="850" border="0" align="center" cellpadding="0" cellspacing="0" id="main">
      <tr>
        <td class="main_table"><table width="800" border="0" align="center" cellpadding="0" cellspacing="0">
          <tr>
            <td class="table_spacer">&nbsp;</td>
          </tr>
          <tr>
            <td class="header">&nbsp;</td>
          </tr>
          <tr>
            <td class="table_spacer">&nbsp;</td>
          </tr>
          <tr>
            <td class="menu"><table width="800" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="28">&nbsp;</td>
                <td width="65"><a href="main.htm" target="_self">home</a></td>
                <td width="65"><a href="lista.htm" target="_self">locali</a></td>
                <td width="105"><a href="offerte.htm" target="_self">promozioni</a></td>
                <td width="100"><a href="ristoratori.htm" target="_self">ristoratori</a></td>
                <td width="65"><a href="about.htm" target="_self">about</a></td>
                <td width="405">segnala</td>
                <td width="31">&nbsp;</td>
              </tr>
            </table></td>
          </tr>
          <tr>
            <td class="table_spacer">&nbsp;</td>
          </tr>
          <tr>
            <td class="titolo_pag_segnala">&nbsp;</td>
          </tr>
          <tr>
            <td><table width="800" border="0" cellpadding="0" cellspacing="0" id="testo">
              <tr>
                <td class="testo"><table width="750" border="0" cellspacing="1" cellpadding="0">
                  <tr>
                    <td colspan="5">&nbsp;</td>
                    </tr>
                  <form method="POST" action="./mail/mail.php">
                  <tr>
                    <td width="184">nome locale *</td>
                    <td colspan="2"><input name="nomelocale" type="text" class="testobox" id="nomelocale" size="55">                </td>
                    <td width="24">&nbsp;</td>
                    <td width="42">&nbsp;</td>
                  </tr>
                  <tr>
                    <td>indirizzo * </td>
                    <td colspan="2"><input name="indirizzo" type="text" class="testobox" id="indirizzo" value="" size="55">
                      </td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>citt&agrave; * </td>
                    <td colspan="2">
                      <input name="citta" type="text" class="testobox" id="citta" size="40">                </td><td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>tel</td>
                    <td colspan="2"><input name="tel" type="text" class="testobox" id="tel"></td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>tipologia locale*</td>
                    <td colspan="2" bgcolor="#E7E3DE"><select name="tipo" class="testobox" id="tipo">
                      <option>seleziona tipologia</option>
                      <option>---------------------------</option>
                      <option>ristorante</option>
                      <option>trattoria/osteria</option>
                      <option>pizzeria</option>
                      <option>agriturismo</option>
                      <option>bar</option>
                      <option>enoteca</option>
                          </select></td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>costo medio per persona * </td>
                    <td colspan="2"><input name="costomedio" type="text" class="testobox" id="costomedio" size="10"> 
                      <strong>?</strong></td><td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>voto * </td>
                    <td colspan="2" bgcolor="#E7E3DE"><select name="qualita" class="testobox" id="qualita">
                        <option>1</option>
                        <option>2</option>
                        <option>3</option>
                        <option>4</option>
                      </select>
                        <strong>qualit&agrave; cibo</strong></td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>&nbsp;</td>
                    <td colspan="2">                  
                      <select name="servizio" class="testobox" id="servizio">
                        <option>1</option>
                        <option>2</option>
                        <option>3</option>
                        <option>4</option>
                      </select>
                      <strong>servizio</strong></td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>&nbsp;</td>
                    <td colspan="2">                  
                      <select name="atmosfera" class="testobox" id="atmosfera">
                        <option>1</option>
                        <option>2</option>
                        <option>3</option>
                        <option>4</option>
                      </select>
                      <strong>atmosfera</strong></td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>&nbsp;</td>
                    <td colspan="2">                  
                      <select name="rapporto" class="testobox" id="rapporto">
                        <option>1</option>
                        <option>2</option>
                        <option>3</option>
                        <option>4</option>
                      </select>
                      <strong>rapporto qualit&agrave; prezzo</strong></td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>commento * 
                      <p>&nbsp;</p>
                      <p>&nbsp;</p>
                      <p>&nbsp;</p></td>
                    <td colspan="2"><textarea name="commento" cols="40" rows="5" class="testobox" id="commento"></textarea>
                    </td><td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>tuo nome * </td>
                    <td colspan="2"><input name="nomeutente" type="text" class="testobox" id="nomeutente">
                    </td><td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>tua email * </td>
                    <td colspan="2"><input name="mailutente" type="text" class="testobox" id="mailutente">
                        (che non verr&agrave; pubblicata sul sito) </td><td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>&nbsp;</td>
                    <td colspan="2">&nbsp;</td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>&nbsp;</td>
                    <td width="190"><input type="submit" name="Submit" value="Invia"></td>
                    <td width="304">&nbsp;</td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td colspan="5" class="spacer_lista_locali">&nbsp;</td>
                    </tr>
                </table>            
                </td>
              </tr>
            </table>          </td>
          </tr>
          <tr>
            <td class="testo"><p><strong>* campi obbligatori</strong></p>          </td>
            </tr>
          <tr>
            <td class="table_spacer">&nbsp;</td>
          </tr>
          <tr>
          </tr>
        </table></td>
      </tr>
      <tr>
        <td><div align="center"><img src="pics/bottom_page.jpg" width="848" height="14"></div></td>
      </tr>
      </form>
    </table>
    </body>
    </html>
    

    non guardate le tabelle xchè quando avevo fatto la pagina un anno fa non ero molto pratico con i css....:D

    e poi ho il file che mi prende i dati e me li manda via mail.

     <?php
    
    // DESTINATARIO MAIL
    $to = "[email protected]";
    
    // SOGGETTO MAIL
    $subject = "CONTACT FORM FOR $nomelocale - $citta";
    
    // BODY
    $body .= "DETTAGLI LOCALE:\n\n";
    $body .= "NOME LOCALE: " . trim(stripslashes($_POST["nomelocale"])) . "\n";
    $body .= "INDIRIZZO: " . trim(stripslashes($_POST["indirizzo"])) . "\n";
    $body .= "CITTA': " . trim(stripslashes($_POST["citta"])) . "\n";
    $body .= "TEL.: " . trim(stripslashes($_POST["tel"])) . "\n";
    $body .= "TIPOLOGIA: " . trim(stripslashes($_POST["tipo"])) . "\n";
    $body .= "COSTO MEDIO: " . trim(stripslashes($_POST["costomedio"])) . "\n";
    $body .= "---------------------------------------------------\n";
    $body .= "QUALITA' CIBO: " . trim(stripslashes($_POST["qualita"])) . "\n";
    $body .= "SERVIZIO: " . trim(stripslashes($_POST["servizio"])) . "\n";
    $body .= "ATMOSFERA: " . trim(stripslashes($_POST["atmosfera"])) . "\n";
    $body .= "RAPPORTO QUALITA' PREZZO: " . trim(stripslashes($_POST["rapporto"])) . "\n";
    $body .= "---------------------------------------------------\n";
    $body .= "COMMENTO: " . trim(stripslashes($_POST["commento"])) . "\n";
    $body .= "---------------------------------------------------\n";
    $body .= "NOME UTENTE: " . trim(stripslashes($_POST["nomeutente"])) . "\n";
    $body .= "MAIL UTENTE: " . trim(stripslashes($_POST["mailutente"])) . "\n\n";
    
    // INTESTAZIONI SUPPLEMENTARI
    $headers = "From: sito.COM>";
    
    if (empty($nomelocale) || empty($indirizzo) || empty($citta) || empty($tipo) || empty($costomedio) || empty($qualita)
     || empty($servizio) || empty($atmosfera) || empty($rapporto) || empty($commento) || empty($nomeutente) || empty($mailutente)) {
    
    // BLOCCO XCHE ALCUNI CAMPI SONO VUOTI
    header('Location: back.htm');
    exit();
    
    }
    
    // INVIO MAIL
    
    
    if(@mail($to, $subject, $body, $headers)) { // SE INOLTRO OK...
    
    header('Location: http://www.sito.com/conferma.htm');
    } else {// sennò...
    
    echo "A problem occurred while sending the email.";
    
    }
    
    ?>
    

    come faccio interagire questa pagina con il db e fare creare dinamicamente le pagine?

    e a sto punto pure la pagina con la lista dovrebbe crearsi dinamicamente...
    mi sto perdendo..:?


  • Super User

    come faccio interagire questa pagina con il db e fare creare dinamicamente le pagine?

    L'interazione con la mail non la so fare, e ora ho a malapena il tempo di respirare 😞

    e a sto punto pure la pagina con la lista dovrebbe crearsi dinamicamente...
    mi sto perdendo..image

    È sempre la stessa pagina 🙂
    Ora però non ho il tempo di scrivertela 😞

    Se io ti dò una pagina base, poi tu sei in grado di modificarla?


  • User Newbie

    ciao Rappo,
    eccomi di nuovo qui.

    ** È sempre la stessa pagina**> in che senso è la stessa pagina?

    ** Se io ti dò una pagina base, poi tu sei in grado di modificarla?> **posso provare ma non ne sono troppo sicuro... proviamo...:(

    grazie ancora!