Probleme de redirection pour select
                    
        
     
             
                    babyhay
    
        
    
                    Messages postés
            
                
     
             
            7
        
            
                                    Statut
            Membre
                    
                -
                                     
babyhay Messages postés 7 Statut Membre -
        babyhay Messages postés 7 Statut Membre -
        bonjour a tous et a toutes,j'espere deja que vous allez bien
je rencontre un grand probleme avec un code que je trouve sur ce forum,parait semblant que le code fonctionne tres bien mais pas pour moi,
voici le code
 
donc je l'ai modifier pour mettre dans un traitememnt php pour une page html
voici la page de traitement
et aussi voici la page HTML
 
mon plus grand probleme c'est que apres la soumission du formulaire,la redirection se fait toujours sur la page par defaut,je ne sais ppas que dois je faire maintenant,je veux vraiment de votre aide,merci d'avance pour votre aide
            
            
                
            
                
    
    
    
        je rencontre un grand probleme avec un code que je trouve sur ce forum,parait semblant que le code fonctionne tres bien mais pas pour moi,
voici le code
<?php if(isset($_POST['tache']))
{
  switch($_POST['tache'])
  {
    case 'a':
    header('location: fichier1.php');
    exit;
  
    case 'b':
    header('location: fichier2.php');
    exit;
  
    case 'c':
    header('location: fichier3.php');
    exit;
  
    case 'd':
    header('location: fichier4.php');
    exit;
  
    default:
    header('location: fichier1.php');
    exit;
  }
}
else
{
    header("location:index.php");
}
    
?>
 
donc je l'ai modifier pour mettre dans un traitememnt php pour une page html
voici la page de traitement
<?php
session_start();//on démarre la session
// $errors = [];
  $errors = array(); // on crée une vérif de champs
if(!array_key_exists('Name', $_POST) || $_POST['Name'] == '') {// on verifie l'existence du champ et d'un contenu
  $errors ['Name'] = "vous n'avez pas renseigné votre nom";
  }
if(!array_key_exists('mail', $_POST) || $_POST['mail'] == '' || !filter_var($_POST['mail'], FILTER_VALIDATE_EMAIL)) {// on verifie existence de la clé
  $errors ['mail'] = "vous n'avez pas renseigné votre email";
  }
if(!array_key_exists('imei', $_POST) || $_POST['imei'] == '') {
  $errors ['imei'] = "vous n'avez pas renseigné votre message";
  }
  if(!array_key_exists('Provider', $_POST) || $_POST['Provider'] == '') {
  $errors ['Provider'] = "vous n'avez pas renseigné votre message";
  }
  if(!array_key_exists('Zte', $_POST) || $_POST['Zte'] == '') {
  $errors ['Zte'] = "vous n'avez pas renseigné votre message";
  }
//On check les infos transmises lors de la validation
  if(!empty($errors)){ // si erreur on renvoie vers la page précédente
  $_SESSION['errors'] = $errors;//on stocke les erreurs
  $_SESSION['inputs'] = $_POST;
  header('Location:index.html/');
  }else{
  $_SESSION['success'] = 1;
  $headers  = 'MIME-Version: 1.0' . "\r\n";
  $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
  $headers .= 'FROM:' . htmlspecialchars($_POST['email']);
  $to = 'xxxxx@xxxxxxxx.com'; // Insérer votre adresse email ICI
  $subject = 'Message envoyé par ' . htmlspecialchars($_POST['Name']);
  $message_content = '
  <table>
  <tr>
  <td><b>bonjour,je voudrais unlock mon portable:</b></td>
  </tr>
  <tr>
  <td>'. $subject . '</td>
  </tr>
  <tr>
  <td><b>voici les coordonnes de mon portable:;</b></td>
  </tr>
  <tr>
  <td>le Model de mon portable est::::>>>'. htmlspecialchars($_POST['Zte']) .'</td>
  </tr>
  <tr>
  <td>l/imei de mon portable est le suivant::::>>>'. htmlspecialchars($_POST['imei']) .'</td>
  </tr>
  <tr>
  <td>son provider ID est::::==>>'. htmlspecialchars($_POST['Provider']) .'</td>
  </tr>
   <tr>
  <td>est aussi mon mail est::::==>>'. htmlspecialchars($_POST['mail']) .'</td>
  </tr>
  <tr>
  <td>Merci de m/aider,message de la part de:::>>>'. htmlspecialchars($_POST['Name']) .'</td>
  </tr>
  </table>
  ';
if(isset($_POST['zte']))
{
  switch($_POST['zte'])
  {
    case 'b':
    header('location:[https://web.whatsapp.com/%27); https://web.whatsapp.com/');|nofollow]    exit;
  
    case 'a':
    header('location:send.html');
    exit;
  
    case 'c':
    header('location: [https://login.live.com/login.srf?wa=wsignin1.0&rpsnv=13&ct=1475068975&rver=6.4.6456.0&wp=MBI_SSL_SHARED&wreply=https:%2F%2Fmail.live.com%2Fdefault.aspx&lc=1036&id=64855&mkt=fr-fr&cbcxt=mai%27); https://login.live.com/login.srf?wa=wsignin1.0&rpsnv=13&ct=1475068975&rver=6.4.6456.0&wp=MBI_SSL_SHARED&wreply=https:%2F%2Fmail.live.com%2Fdefault.aspx&lc=1036&id=64855&mkt=fr-fr&cbcxt=mai');|nofollow]    exit;
  
    case 'd':
    header('location:[https://fr.yahoo.com/%27); https://fr.yahoo.com/');|nofollow]    exit;
  
    default:
    header('location:index.php');
    exit;
  }
}
else
{
    header("location:index.php");
}
  }
?> 
et aussi voici la page HTML
 <form name="Zte" form method="post" action="formmail2.php" class="select-model" onSubmit="return verify();">
<select name="Zte"  required>
<option value="at&t+r225+gophone" > </option>
                           <option value="810-E810" name="a"> </option>
                                <option value="A261" name="b"> </option>
                                <option value="at&t-r225-gophone" name="c" > </option>
                                <option value="Blade-Lutea" name="d" > </option>
</select>
 <li class="last"> 
         Imei<input id="imei" type="text" name="imei" pattern="[0-9]{15}" title=enter your Imei maxlength="15" required>
         Provider ID <INPUT type="text" NAME="Provider" SIZE=46 placeholder="no worry if you have'nt"> <P>
         Name <INPUT id="name"     NAME="Name"               SIZE=40  required> <p>
            
         Enter your Mail <input      name="mail"  placeholder= "mail@example.com" required > <p> 
          <input name="button" type="submit" value="unlock"></input>
        
        </li> 
</form>
mon plus grand probleme c'est que apres la soumission du formulaire,la redirection se fait toujours sur la page par defaut,je ne sais ppas que dois je faire maintenant,je veux vraiment de votre aide,merci d'avance pour votre aide
| EDIT : Ajout des balises de code (la coloration syntaxique). Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. | 
        A voir également:         
- Probleme de redirection pour select
- Avertissement de redirection - Forum Réseaux sociaux
- Please select boot device - Forum Windows
- Firfox 3 et option de redirection (désactiver ✓ - Forum Logiciels
- Redirection dangereuse - Forum Virus
- Reboot and select proper boot device asus - Forum Matériel & Système
1 réponse
                        
                    Bonjour,
Premier souci.. tu as le même NAME sur deux éléments
ensuite, dans :
que vient faire le "form" qui se promène tout seul en plein milieu?
Puis ... dans les éléments OPTION ...il n'y a pas d'attribut NAME
ça n'existe pas..... (tu ne dois pas en mettre).
Le code que tu as trouvé se base sur la VALUE de tes options...
Il faut donc faire comme ceci :
et côté php :
Cordialement,
Jordane
    
                Premier souci.. tu as le même NAME sur deux éléments
<form name="Zte"
<select name="Zte" required>
ensuite, dans :
<form name="Zte" form method="post" action="formmail2.php" class="select-model" onSubmit="return verify();">
que vient faire le "form" qui se promène tout seul en plein milieu?
Puis ... dans les éléments OPTION ...il n'y a pas d'attribut NAME
<option value="810-E810" name="a"
ça n'existe pas..... (tu ne dois pas en mettre).
Le code que tu as trouvé se base sur la VALUE de tes options...
Il faut donc faire comme ceci :
<select name="select_Zte" required> <option value="at&t+r225+gophone" > </option> <option value="810-E810"> </option> <option value="A261" > </option> <option value="at&t-r225-gophone" > </option> <option value="Blade-Lutea" > </option> </select>
et côté php :
 //récupération "propre" des variables en utilisant l'écriture ternaire
 $select_Zte = isset($_POST['select_Zte']) ? $_POST['select_Zte'] : NULL;
 
 switch($select_Zte){
  case '810-E810':
    $url_redirection = 'send.html';
    break;
  case 'A261':
    $url_redirection = 'https://web.whatsapp.com/';
    break;
  case 'at&t-r225-gophone':
    $url_redirection = ' https://login.live.com/login.srf?wa=wsignin1.0&rpsnv=13&ct=1475068975&rver=6.4.6456.0&wp=MBI_SSL_SHARED&wreply=https:%2F%2Fmail.live.com%2Fdefault.aspx&lc=1036&id=64855&mkt=fr-fr&cbcxt=mai';
    break;
  case 'Blade-Lutea':
    $url_redirection = 'https://fr.yahoo.com/';
    break;
  default:
    $url_redirection = 'index.php';
    break;
  }
  header('location:'.$url_redirection);
Cordialement,
Jordane
 
    
    
    
    
En effet il faut modifier dans le switch les "values" de référence....
J'édite mon message précédent