DCSIMG
Φόρμα επικοινωνίας - Web programming - Προγραμματισμός - StudentGuru

Φόρμα επικοινωνίας

ΜήνυμαΣτις: Σήμερα στις 01:31    Θέμα: Note Προβλημα με PHP και Html script

Περιγραφή θέματος: Φόρμα επικοινωνίας Απάντηση με παράθεση Edit/Delete this post  Αναφορά Μηνύματος Mark this post and the followings unread

Καλημερα σε όλους και σε όλες.Ειναι η πρωτη μου φορα εδω οποτε μην με παρεξηγησετε αν κανω κατι λαθος.

Λοιπον,στο προβλημα τωρα.

Δεν είμαι και πολυ γνωστης πανω στον προγραμματισμο αλλα ειχα καταφερει να κανω μια φορμα επικοινωνιας να δουλεψει αψογα,την βρηκα σε μια ιστοσελιδα και της εκανα μετατροπες και της προσθεσα και captcha (ΑΠΛΟ cpatcha).Υστερα απο αρκετες επυτιχημενες δοκιμες ξαφνικα η φορμα ενω στελνει το μυνημα εγω σταματω να το λαμβανω.Δεν υπαρχει πουθενα.Σας παραθετω τα αρχεια και οποιος μπορει ας βοηθησει.

test.html

<!DOCTYPE html>

<html dir="ltr" lang="en-US"><head>

   <meta charset="utf-8">

   <title>Αγορά</title>

   <meta name="viewport" content="initial-scale = 1.0, maximum-scale = 1.0, user-scalable = no, width = device-width">

<body>

<head>

<form action="orders.php" method="post">

       <p style="text-align: center;">      

       <br><span style="font-size: 16px;">Ονοματεπώνυμο:</span><br>

       <input type="text" name="name" style="width: 30%">

     <br><span style="font-size: 16px;">Νομός:</span><br>

       <input type="text" name="state" style="width: 30%">

       <br><span style="font-size: 16px;">Διεύθυνση:</span><br>

       <input type="text" name="address" style="width: 30%">

       <br><span style="font-size: 16px;">Τηλ.Επικοινωνίας:</span><br>

       <input type="text" name="telephone" style="width: 30%">

       <br><span style="font-size: 16px;">Email:</span><br>

       <input type="text" name="email" style="width: 30%">

       <br>    

       <br><span style="font-size: 16px;">Παραγγελία-Σχόλια:</span><br><textarea type="comments" name="comments" cols="30" rows="5" class="html-text-box" style="width: 30%"></textarea> </p><p style="text-align: center;"> <br><span style="font-family: 'Palatino Linotype'; font-size: 16px;">

       <center>Εισάγεται τον κωδικό που βλέπετε.</center>

       <center><input name="captcha" type="text"></center>

       <center><img src="captcha.php"/></center><br>

     <center><input type="submit" value="Αποστολή"/></center></span></p></form>

<p>

</body>

</head>

</html>

orders.php

<?php header("content-type: text/html;charset=utf-8")

?>

<?php

session_start();

if(isset($_POST["submit"])&&$_POST["captcha"]!=""&&$_SESSION["code"]==$_POST["captcha"])

{

echo "Correct Code Entered";

//Do you stuff

}

else

{

die("Εισάγατε λάθος κωδικό. Προσπαθήστε ξανά.");

}

{

  //This page should not be accessed directly. Need to submit the form.

  echo "Σφάλμα; Πρέπει να κάνετε αποστόλη την φόρμα.";

}

 $name = $_POST['name'];

 $state = $_POST['state'];

 $address = $_POST['address'];

 $telephone = $_POST['telephone'];

 $email = $_POST['email'];

 $comments = $_POST['comments'];

//Validate first

if(empty($name)||empty($email)||empty($telephone))

{

   echo "Το ονοματεπώνυμο,το τηλέφωνο και το E-mail είναι υποχρεωτικά.";

   exit;

}

if(IsInjected($email))

{

   echo "Το E-mail σας δεν είναι σωστό.";

   exit;

}

$email_from = 'toemailapotonhost@blablabla.com';//<== update the email address

$email_subject = "Νέα Παραγγελία-Σχόλιο.";

$email_body = "Έχετε λάβει καινούργιο μύνημα απο $name.\n".

   "Αυτό είναι το μύνημα:\n

 Ονοματεπώνυμο: $name

 Νομός: $state

 Διεύθυνση: $address

 Τηλ.Επικοινωνίας: $telephone

 Email: $email

 Σχόλια: $comments

".

$to = "toemailmou@gmail.com";//<== update the email address

$headers = "From: $email_from \r\n";

$headers .= "Reply-To: $email \r\n";

//Send the email!

mail($to,$email_subject,$email_body,$headers);

//done. redirect to thanks page.

header('Location: thanks.html');

// Function to validate against any email injection attempts

function IsInjected($str)

{

 $injections = array('(\n+)',

             '(\r+)',

             '(\t+)',

             '(%0A+)',

             '(%0D+)',

             '(%08+)',

             '(%09+)'

             );

 $inject = join('|', $injections);

 $inject = "/$inject/i";

 if(preg_match($inject,$str))

   {

   return true;

 }

 else

   {

   return false;

 }

}

captcha.php

<?php

session_start();

$code=rand(1000,9999);

$_SESSION["code"]=$code;

$im = imagecreatetruecolor(50, 24);

$bg = imagecolorallocate($im, 22, 86, 165); //background color blue

$fg = imagecolorallocate($im, 255, 255, 255);//text color white

imagefill($im, 0, 0, $bg);

imagestring($im, 5, 5, 5,  $code, $fg);

header("Cache-Control: no-cache, must-revalidate");

header('Content-type: image/png');

imagepng($im);

imagedestroy($im);

?>

Οποιος μπορεί  ας βοηθήσει λίγο.

1 Reply

  • Αν επερνες τα μηνύματα και τωρα δεν ερχονται πιθανοτατα να εχει να κανει με τον web server σου και οχι με το php script. Δώσε περισσότερες λεπτομέρειες αν μπορεις....

    Web Developer @ nullfix.com

Related