Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα,

 

Κατασκευάζω μία προσωπική σελίδα και αντιμετωπίζω ένα πρόβλημα. Στην Φόρμα Επικοινωνίας, συμπληρώνω τα στοιχεία, πατάω "Αποστολή", τα πάντα έρχονται κανονικά στο mail μου, αλλά όταν πατάω "Αποστολή" με πηγαίνει σε μία λευκή σελίδα. Θα ήθελα να μάθω πως να με πηγαίνει σε μία δική μου σελίδα (π.χ. την contact2.html) αντί της λευκής.

 

Παραθέτω τους κώδικες:

 

contact.html

 

>
<form method="post" name="contact" action="css/contact.php">
				   
				    <label for="author">Ονοματεπώνυμο :</label> <input type="text" id="author" name="author"/>
				    <div class="cleaner h10"></div>
				    <label for="job">E - Mail :</label> <input type="text" id="mail" name="mail"/>
				    <div class="cleaner h10"></div>
				    <div class="cleaner h10"></div>
				    <label for="text">Μήνυμα :</label> <textarea id="text" name="text" rows="0" cols="0" class="required"></textarea>
				    <div class="cleaner h10"></div>
				   
				    <input type="submit" value="Αποστολή" id="submit" name="Submit" class="submit_btn float_l" />
  <input type="reset" value="Καθαρισμός" id="reset" name="reset" class="submit_btn float_r" />
		 </form>

 

contact.php

 

>
<?php
$ToEmail = '[email protected]';
$EmailSubject = 'www.GeorgAthan.com (New E - Mail)';
$mailheader = "From: ".$_POST["email"]."\r\n";
$mailheader .= "Reply-To: ".$_POST["email"]."\r\n";
$mailheader .= "Content-type: text/html; charset=iso-8859-1\r\n";
$MESSAGE_BODY = "Name: ".$_POST["author"]."";
$MESSAGE_BODY .= "E - Mail: ".nl2br($_POST["mail"])."";
$MESSAGE_BODY .= "Text: ".nl2br($_POST["text"])."";
?>

Δημοσ.

Σε ευχαριστώ πολύ για την απάντησή σου.

Να τονίσω ότι όποιος δεν έχει .php, μπόρει αντί για

>header("Location: <όνομα σελίδας>.php");

να βάλει

>header("Location: folder/onoma_selidas.html");

 

... όπου: folder = φάκελος που έχει την σελίδα του

 

Κάτι πολύ τελευταίο:

 

Όταν, λοιπόν, συμπληρώνει κάποιος την φόρμα και έρχεται σε μενα το mail, αυτό είναι κάπως έτσι:

 

>Name: kostasE - Mail: [email="[email protected]"][email protected][/email]: dokimi 

 

Πως μπορεί να γίνει λίγο πιο ανθρώπινο;

 

To php είναι:

 

><?php
$ToEmail = '[email protected]';
$EmailSubject = 'www.GeorgAthan.com (New E - Mail)';
$mailheader = "From: ".$_POST["email"]."\r\n";
$mailheader .= "Reply-To: ".$_POST["email"]."\r\n";
$mailheader .= "Content-type: text/html; charset=iso-8859-1\r\n";
$MESSAGE_BODY = "Name: ".$_POST["author"]."";
$MESSAGE_BODY .= "E - Mail: ".nl2br($_POST["mail"])."";
$MESSAGE_BODY .= "Text: ".nl2br($_POST["text"])."";
mail($ToEmail, $text, $MESSAGE_BODY);
header("Location: /test/index.html");
?>

Δημοσ.

Theostalte

βάλε και ένα if πριν το redirect (για διάφορους λόγους)

>
<?php
$ToEmail = '[email protected]';
$EmailSubject = 'www.GeorgAthan.com (New E - Mail)';
$mailheader = "From: ".$_POST["email"]."\r\n";
$mailheader .= "Reply-To: ".$_POST["email"]."\r\n";
$mailheader .= "Content-type: text/html; charset=iso-8859-1\r\n";
$MESSAGE_BODY = "Name: ".$_POST["author"]."";
$MESSAGE_BODY .= "E - Mail: ".nl2br($_POST["mail"])."";
$MESSAGE_BODY .= "Text: ".nl2br($_POST["text"])."";
if (mail($ToEmail, $text, $MESSAGE_BODY))
{
header("Location: /test/index.html");
} else {
echo "Problem! Email NOT sent";
}
?>

  • Like 1
Δημοσ.

Να τονίσω ότι όποιος δεν έχει .php, μπόρει αντί για

>header("Location: <όνομα σελίδας>.php");

να βάλει

>header("Location: folder/onoma_selidas.html");

 

Αν εννοείς να μην έχει κάποια σελίδα με κατάληξη *.php τότε ΟΚ. Αν δεν έχει καθόλου υποστήριξη για PHP τότε το παραπάνω δεν θα δουλέψει.

 

Πως μπορεί να γίνει λίγο πιο ανθρώπινο;

 

Δοκίμασε το ακόλυοθο μήπως δουλέψει:

><?php
$ToEmail = '[email protected]';
$EmailSubject = 'www.GeorgAthan.com (New E - Mail)';
$mailheader = "From: ".$_POST["email"]."\r\n";
$mailheader .= "Reply-To: ".$_POST["email"]."\r\n";
$mailheader .= "Content-type: text/html; charset=iso-8859-1\r\n";
$MESSAGE_BODY = "Name: ".$_POST["author"]."" . "\r\n";
$MESSAGE_BODY .= "E - Mail: ".nl2br($_POST["mail"])."" . "\r\n";
$MESSAGE_BODY .= "Text: ".nl2br($_POST["text"])."";
mail($ToEmail, $text, $MESSAGE_BODY);
header("Location: /test/index.html");
?>

 

Έχω προσθέσει τα "\r\n" ώστε να αλλάζει γραμμή στο mail που λαμβάνεις.

Δημοσ.

Αυτός ο τρόπος είναι ο ίδιος και για άλλα redirections;

 

Έχουμε αυτήν την εικόνα:

 

post-227859-0-08421600-1351337608_thumb.png

 

Θέλω να δημιουργήσω μία database, έτσι ώστε αν κάποιος πελάτης μου θέλει να κάνει "Είσοδο", να πληκτρολογήσει τα στοιχεία του και να γίνεται redirect σε ένα tyxaio_onoma_selidas.html, οπού εκεί θα βλέπει διάφορα πράγματα (δε μας ενδιαφέρει αυτό το .html, καθώς το έχω κάνει ήδη).

 

Γνωρίζει κανείς πως γίνεται αυτό;

Ή αν είναι πολύς ο δρόμος, έχετε κατά νου κάποια κατατοπισμένη σελίδα (ελληνική ή αγγλική);

 

Ευχαριστώ πολύ!

Δημοσ.

Αυτό που θέλεις να κάνεις είναι το λεγόμενο PRG pattern. Η σελίδα της wikipedia δεν έχει πολλές πληροφορίες (διάβασέ την όμως) αλλά με λίγο googling για "PRG pattern" και "post/redirect/get" θα βρεις άπειρο πράμα.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...