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

    Problema con contact form

    Ciao a tutti, avrei un piccolo problema con un contact form che ho messo su una pagina web. Premesso che il form funziona, nel senso che i messaggi arrivano all'indirizzo mail desiderato, il problema è che dopo aver inviato il messaggio, vengo dirottato alla pagina sendContact.php (quella che gestisce il traffico dei messaggi) che mi appare bianca con la scritta:

    Parse error: syntax error, unexpected '"' in /web/htdocs/www.michelangelotorres.net/home/pagine/sendContact.php on line 15

    la pagina sendContact.php è così compilata:

    <?php

    $contact_email = $_POST['email'];
    $contact_name = $_POST['name'];
    $contact_message = $_POST['message'];

    if( $contact_name == true )
    {
    $sender = $contact_email;
    $receiver = "info@michelangelotorres.net";
    $client_ip= $_SERVER['REMOTE_ADDR'];
    $email_body = "name:
    $contact_name \nEmail: $sender \n\nMessage: \n\n$contact_message\n\nxxxxxxx";
    $extra = "From: $sender\r\n"
    "reply-To: $sender \r\n" . "x-mailer:PHP/" . phpversion()
    if (mail( $receiver, "mmmmmmmmmmmm - $contact_subject",
    $email_body, $extra ) )
    {
    echo "success=yes";
    }
    else
    {
    echo "success=no";
    }
    }
    ?>

    la riga 15 corrisponde alla stringa di codice
    "reply-To: $sender \r\n" . "x-mailer:PHP/" . phpversion()

    dove sbaglio?

    Grazie a chi mi risponderà.

    Se compilo il form, che trovate questo indirizzo http://www.michelangelotorres.net/pagine/contact.html
    nelle caselle 'name' e 'email' scrivo con il font trebuchet (quello che ho scelto), mentre in 'message' se scrivo appare il times new roman. perchè, secondo voi?

  2. #2
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308
    Codice PHP:
    $extra "From: $sender\r\n"
    "reply-To: 
    $sender \r\n" "x-mailer:PHP/" phpversion() 
    Dovrebbe essere

    Codice PHP:
    $extra "From: $sender\r\n" .
    "reply-To: $sender \r\n" "x-mailer:PHP/" phpversion(); 
    Ciao

  3. #3

    hai ragione

    hey grazie! effettivamente mancava il punto e virgola. adesso mi appare una pagina bianca (sempre sendContact.php) con scritto success=yes: non ci sarebbe un modo per far sì che dopo l'invio del messaggio, appaia nuovamente la pagina del contact form 'pulita' e pronta per essere nuovamente compilata? credo che esista una funzione chiamata header o qualcosa del genere

    una stringa come questa (vado a memoria....):

    <?php header('Location: contact.html'); ?>

    inserita a fine pagina. Può essere?

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    65
    Si basta che inserisci la stringa con la funzione header nell'if che ti genera il success=yes.

    Altrimenti, sempre in quell'if, ci metti un include/require che richiama la pagina del form.

  5. #5
    qualcosa del genere?


    <?php

    $contact_email = $_POST['email'];
    $contact_name = $_POST['name'];
    $contact_message = $_POST['message'];

    if( $contact_name == true )
    {
    $sender = $contact_email;
    $receiver = "info@michelangelotorres.net";
    $client_ip= $_SERVER['REMOTE_ADDR'];
    $email_body = "name:
    $contact_name \nEmail: $sender \n\nMessage: \n\n$contact_message\n\nxxxxxxx";
    $extra = "From: $sender\r\n" .
    "reply-To: $sender \r\n" . "x-mailer:PHP/" . phpversion();
    if (mail( $receiver, "mmmmmmmmmmmm - $contact_subject",
    $email_body, $extra ) )
    {
    echo "success=yes";
    }
    else
    {
    echo "success=no";
    }
    {
    <?php header('Location: contact.html'); ?>;
    }
    }
    ?>

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.