• 0
redha8219

ارجوا المساعدة لدي مشكلة مع صفحة contact.php

سؤال

السلام عليكم 


إن شاء الله راح ألقى الحل معاكم


أولا أنا مبتدئ في php وقمت بتحميل script php لعمل صفحة contact , وكل تمام لما أبعث رسائل بالفرنسية إلا أن بالعربية صار لي مشكل جنني في خانة موضوع الرسالة objet      زي المثال في الأسفل


 


 


موضوع الرسالة :  ت??ي?


 


بريدك الإلكتروني :  [email protected]


 


الرسالة : السلام عليكم ورحمة الله تعالى وبركاته


 


 


 


 هدا كود الصفحة


<?php  

 

$reset='<p class="bt">  

<input type="reset" name="reset" tabindex="3" value="إفراغ"></p>';  

$Envoi="\n".'<p class="bt">  

<input name="envoi" tabindex="4" value="أرسل" type="submit"></p>';  

if (isset($_POST['message']))  

  {  

    // La variable $verif va nous permettre d'analyser si la sémantique de l'email est bonne  

    $verif='#^[\w.-][email protected][\w.-]+\.[a-zA-Z]{2,5}$#';  

    //quelques remplacements pour les specialchars  

    $message=preg_replace('#(<|>)#', '-', $_POST['message']);  

    $message=str_replace('"', "'",$message);  

    $message=str_replace('&', 'et',$message);  

    $objet=preg_replace('#(<|>)#', '-', $_POST['objet']);  

    $objet=str_replace('"', "'",$objet);  

    $objet=str_replace('&', 'et',$objet);  

    // On assigne et/ou protège nos variables  

    $votremail=stripslashes(htmlentities($_POST['votremail']));  

    $message=stripslashes(htmlspecialchars($message));  

    $objet=stripslashes(htmlspecialchars($objet));  

    //input envoi/reset  

    $envoi=htmlentities($_POST['envoi']);  

    $reset=htmlentities($_POST['reset']);  

    //on enlève les espaces  

    $votremail=trim($votremail);  

    $message=trim($message);  

    $objet=trim($objet);  

    $apercu_resultat='<p></p>';  

 

    /*On vérifie si l'e mail et le message sont pleins, et on agit en fonction.  

      (on affiche Apercu du resultat, tel ou tel champ est vide, etc...*/  

    //Si ca ne vas pas (mal rempli, mail non valide...)  

    if((empty($message))or(empty($objet))or(!preg_match($verif,$votremail)))  

      {  

        //les 3 champs sont vides  

        if(empty($votremail)and(empty($message))and(empty($objet)))  

          {  

            echo '<p>جميع الخانات فارغة</p>';  

            $message='';$votremail='';$objet='';$apercu_resultat='';  

          }  

        //un des champs est vide  

        else  

          {  

            if(!preg_match($verif,$votremail))  

              echo'<p>عنوان البريد الإلكتروني غير صالح</p>';  

            else  

            {  

              echo'<p>يرجى ملء جميع الخانات</p>';  

              if(empty($message))  

                $apercu_resultat='';  

            }  

          }  

      }  

    //Si les deux sont pleins et que l'adresse est valide, on envoie on on prévisualise sans envoi  

    else  

      {  

        $domaine=preg_replace('#[^@][email protected](.+)#','$1',$votremail);  

        $DomaineMailExiste=checkdnsrr($domaine,'MX');  

        if(!$DomaineMailExiste)  

          echo'<p>عنوان البريد الإلكتروني الذي أدخلته غير موجود</p>';  

        elseif(!empty($reset))  

            {  

              $apercu_resultat='';  

              $reset='';  

            }  

        elseif(!empty($envoi))  

            { 

$objet=''.$objet;  

      $headers='From:'.$votremail."\r\n".

'To:'.$mail."\r\n". 'Content-type:text/plain;charset=utf-8'."\r\n".'Sent:'

.date('l, F d, Y H:i');               

 if(mail($destinataire,$objet,$message,$headers))  

 

              {  

                echo '<p>تم إرسال رسالتك شكرا لك</p><p><a href="/"></a></p>';  

                  

              }  

              else  

                echo'<p>كانت هناك مشكلة أثناء إرسال البريد الإلكتروني</p>';  

            }  

        else  

          echo'<p>حدثت حالة غير متوقعة في البرنامج النصي</p>';  

      }  

echo $apercu_resultat;  

  }  

else  

  {  

  echo '<p></p>';  

  $votremail='';$message='';  

  }  

$bas_formulaire=$reset.$Envoi;  

?>

 


0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

1 إجابات على هذا السؤال .

  • 0

السلام عليكم أخي جرب هذا الكود و ان لم ينجح أرفع الملفات كاملة و أعطني الررابط

<!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" />    <link type="text/css" rel="stylesheet" href="style.css" media="screen"/>    <title></title></head><body><?php   $reset='<p class="bt">  <input type="reset" name="reset" tabindex="3" value="إفراغ"></p>';  $Envoi="\n".'<p class="bt">  <input name="envoi" tabindex="4" value="أرسل" type="submit"></p>';  if (isset($_POST['message']))    {      // La variable $verif va nous permettre d'analyser si la sémantique de l'email est bonne      $verif='#^[\w.-][email protected][\w.-]+\.[a-zA-Z]{2,5}$#';      //quelques remplacements pour les specialchars      $message=preg_replace('#(<|>)#', '-', $_POST['message']);      $message=str_replace('"', "'",$message);      $message=str_replace('&', 'et',$message);      $objet=preg_replace('#(<|>)#', '-', $_POST['objet']);      $objet=str_replace('"', "'",$objet);      $objet=str_replace('&', 'et',$objet);      // On assigne et/ou protège nos variables      $votremail=stripslashes(htmlentities($_POST['votremail']));      $message=stripslashes(htmlspecialchars($message));      $objet=stripslashes(htmlspecialchars($objet));      //input envoi/reset      $envoi=htmlentities($_POST['envoi']);      $reset=htmlentities($_POST['reset']);      //on enlève les espaces      $votremail=trim($votremail);      $message=trim($message);      $objet=trim($objet);      $apercu_resultat='<p></p>';       /*On vérifie si l'e mail et le message sont pleins, et on agit en fonction.        (on affiche Apercu du resultat, tel ou tel champ est vide, etc...*/      //Si ca ne vas pas (mal rempli, mail non valide...)      if((empty($message))or(empty($objet))or(!preg_match($verif,$votremail)))        {          //les 3 champs sont vides          if(empty($votremail)and(empty($message))and(empty($objet)))            {              echo '<p>جميع الخانات فارغة</p>';              $message='';$votremail='';$objet='';$apercu_resultat='';            }          //un des champs est vide          else            {              if(!preg_match($verif,$votremail))                echo'<p>عنوان البريد الإلكتروني غير صالح</p>';              else              {                echo'<p>يرجى ملء جميع الخانات</p>';                if(empty($message))                  $apercu_resultat='';              }            }        }      //Si les deux sont pleins et que l'adresse est valide, on envoie on on prévisualise sans envoi      else        {          $domaine=preg_replace('#[^@][email protected](.+)#','$1',$votremail);          $DomaineMailExiste=checkdnsrr($domaine,'MX');          if(!$DomaineMailExiste)            echo'<p>عنوان البريد الإلكتروني الذي أدخلته غير موجود</p>';          elseif(!empty($reset))              {                $apercu_resultat='';                $reset='';              }          elseif(!empty($envoi))              { $objet=''.$objet;        $headers='From:'.$votremail."\r\n".'To:'.$mail."\r\n". 'Content-type:text/plain;charset=utf-8'."\r\n".'Sent:'.date('l, F d, Y H:i');                if(mail($destinataire,$objet,$message,$headers))                 {                  echo '<p>تم إرسال رسالتك شكرا لك</p><p><a href="/"></a></p>';                                  }                else                  echo'<p>كانت هناك مشكلة أثناء إرسال البريد الإلكتروني</p>';              }          else            echo'<p>حدثت حالة غير متوقعة في البرنامج النصي</p>';        }  echo $apercu_resultat;    }  else    {    echo '<p></p>';    $votremail='';$message='';    }  $bas_formulaire=$reset.$Envoi;  ?></body></html> 
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .