Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    84

    Domanda stupida per invio form via mail

    Salve ho iniziato da poco a studiare il php. Volevo realizzare un semplice form in una pagina html che invia i dati (semplicemente un nome ed un cognome) ad un pagina php che a sua volta li processa inviandomeli tramite e-mail sfruttando la funzione mail(). Allora per fare questa prova ho creato 2 file. Uno index.html ed un altro send.php. Nel primo c'è il seguente codice:

    codice:
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Titolo</title>
    </head>
    
    <body>
    <form action="send.php"  method="POST"> 
    
    <table border="0" cellspacing="0" cellpadding="5" align="center">
       <tr>
          <td> Nome:</td>
          <td align="right"><input type="text" text name="name"></td>
       </tr>
       <tr>
          <td>Cognome:</td>
          <td align="right"><input type="text" text name="surname"></td>
       </tr>
       
       <tr>
          <td colspan="2" align="center"><input type="Submit" value="Invia"></td>
       </tr>
    </table>
    
    
    </form>
    </body>
    </html>


    Nell'altro invece

    Codice PHP:
    <?php

    echo "

    I dati sono stati inviati con successo</p>"
    ;

    //start building the mail string

    $msg"Nome: $_POST[name] ";
    $msg .= "Cognome: $_POST[surname] ";


    //send the mail

    mail("mia_mail""Form"$msg);
    ?>


    Dopo tramite l'ftp ho uppato i 2 file sullo spazio web di alice per vedere se funziona ma appena clicco su invia appare

    Method Not Allowed
    The requested method POST is not allowed for the URL xxxxx

    Come mai?

  2. #2
    Lo spazio WEB di Alice e' solo per file html e percio' non gestisce il php.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    84
    ah ecco svelato il mistero. Sai se altervista da problemi?

    Ultima domanda: che righe di codice devo inserire per far apparire una finestrella di errore se uno dei due campi non è stato compilato? Grazie mille

  4. #4
    Originariamente inviato da luci89
    Ultima domanda: che righe di codice devo inserire per far apparire una finestrella di errore se uno dei due campi non è stato compilato? Grazie mille
    usa javascript. Prova sul forum apposito per i linguaggi lato client.

    quasi certamente troverai quello che ti serve nei thread in rilievo ad inizio pagina.

    http://forum.html.it/forum/forumdisp...p?s=&forumid=3

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    84
    Si ma mi piacerebbe farlo in php visto che lo sto facendo solo per imparare.

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Finestre di errore non puoi farle apparire usando php, devi necessariamente usare un linguaggio lato client.
    PHP non interagisce col browser dell'utente, vive solo sul server dove è ospitato il sito.

  7. #7
    anche io come te sto iniziando a studiare il php e ti rispondo per quel che ne sò...
    il controllo php lo può fare solo dopo che hai inviato il form... io lo farei tipo così


    if ($_POST['nome']==""){echo "devi inserire un nome!!"; exit();}

    Traduzione: se (if) il nome è vuoto ($_POST['nome']=="") conseguenza (messa tra parentesi graffe) stamapa a video la frase "devi inserire un nome!" e non proseguire nello script (exit)

  8. #8
    Puoi fare cosi:
    fai un form, per esempio così:
    Codice PHP:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <
    html xmlns="http://www.w3.org/1999/xhtml">
    <
    head>
    <
    meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <
    title>modulo di login</title>
    <
    link href="layout.css" rel="stylesheet" type="text/css" />
    </
    head>
    <
    body>
      <
    form name="modulo" action="ricerca_dati.php" method="post">
      
    Pannello di ricerca:

        

        <
    label><class="corpo_centr">Username:
          <
    input type="user" name="codice_user" size="30" />
          </
    p>
        </
    label>
        
        <
    label><class="corpo_centr">Password:
          <
    input type="password" name="codice_password" size="30" />
          </
    p>
        </
    label>
        <
    input name="submit" type="submit" value="invia"/>
      </
    form>

    </
    body>
    </
    html
    poi il file richiamato dal form:
    "ricerca_dati.php"


    Codice PHP:
    <?php 
    //includo il file che mi serve
    include ("config.inc.php");

    // Recupero i dati dal form inserimento_login.php
    $codice_user $_POST['codice_user']; 
    $codice_password $_POST['codice_password']; 

    //questo è il codice che verifica i campi del form           

    if (empty($codice_user) ||empty($codice_password))   <-------------==
    {
      echo 
    'Uno o più campi obbligatori sono vuoti!
    '

      echo 
    '[url="inserimento_login.php"]Torna indietro[/url]'
    {
    exit; 
    }
    }
    else 
    ecc eccpoi metti il tuo codice
    ?>
    Quì : if (empty($codice_user) ||empty($codice_password)) verifichi se i campi del form sono vuoti.


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.