Rediriger page 404 Personnaliser

Résolu
lina-24 Messages postés 65 Statut Membre -  
lina-24 Messages postés 65 Statut Membre -
Bonjour,

Je suis bloqué sur une partie de mon script et je n'arrive pas à la résoudre.
Es-qu’il y a moyen de rediriger les personnes qui tapent un id Qui n’existe pas sur ma BD ex.. (id=10000 ) sur la barre d’adresse directement vers la page 404.
J’ai réussi pour le ID vide mais pas pour un ID qui n’existe pas sur ma BD !


doDB();
	
// Vérifier si la variable est vide. j'envois à  page not found 404!
if (empty ($_GET['id'] ))	
 {
	  echo "<script>location.href='personal.php?pg=404';</script>"; 
	
	}	
//exécute les instructions  au cas où l'expression du if est false. 
else
{
$id=$_GET['id'];
 $sql="select * from article where id='$id'";
 if ($rs = $mysqli->query($sql)) { 
       while ($row = $rs->fetch_assoc())
                 
	   $id=$_GET['id'];								

if ($rs = $mysqli->query($sql)) { 
       while ($row = $rs->fetch_assoc())
{
       



Configuration: Windows / Chrome 101.0.4951.67

9 réponses

  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    bonjour,
    il y a quoi dans le
    else
    du
    if
    en ligne 20?
    0
  2. lina-24 Messages postés 65 Statut Membre 4
     
    <div class="col-md-12 text-center">
      <h1><?php echo"". $row['nom'] .""; ?></h1>
    
    <ol class="breadcrumb">								
       <li class="breadcrumb-item active">
          <?php echo"". $row['prenom'] .""; ?>
      </li>
    </ol>
    	</div>	 EX.....................
    
    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      peux-tu partager ton code complet?
      0
  3. lina-24 Messages postés 65 Statut Membre 4
     
    00 h je n'arrive toujours pas :(
    0
  4. lina-24 Messages postés 65 Statut Membre 4
     
    Bonjour yg_be
    voila le code complet

    <?php 
    doDB();
    	
    // Vérifier si la variable est vide. j'envois à  page not found 404!
    if (empty ($_GET['id'] ))	
     {
    	  echo "<script>location.href='personal.php?pg=404';</script>"; 
    	
    	}	
    //exécute les instructions  au cas où l'expression du if est false. 
    else
    {
    $id=$_GET['id'];
     $sql="select * from article where id='$id'";
     if ($rs = $mysqli->query($sql)) { 
           while ($row = $rs->fetch_assoc())
                     
    	   $id=$_GET['id'];								
    
    if ($rs = $mysqli->query($sql)) { 
           while ($row = $rs->fetch_assoc())
    {
           
    ?>
    
    <div class="col-md-12 text-center">
      <h1><?php echo"". $row['nom'] .""; ?></h1>
    
    <ol class="breadcrumb">								
       <li class="breadcrumb-item active">
          <?php echo"". $row['prenom'] .""; ?>
      </li>
    </ol>
    	</div>	
    <?php 
    //======== FIN du WHILE
    //========= FIN DU IF
    }
    }
     } 
    } 
    mysqli_close($mysqli);
    ?>
    
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. lina-24 Messages postés 65 Statut Membre 4
     
    bonjour voila le code complet
    <?php 
    doDB();
    	
    // Vérifier si la variable est vide. j'envois à  page not found 404!
    if (empty ($_GET['id'] ))	
     {
    	  echo "<script>location.href='personal.php?pg=404';</script>"; 
    	
    	}	
    //exécute les instructions  au cas où l'expression du if est false. 
    else
    {
    $id=$_GET['id'];
     $sql="select * from article where id='$id'";
     if ($rs = $mysqli->query($sql)) { 
           while ($row = $rs->fetch_assoc())
                     
    	   $id=$_GET['id'];								
    
    if ($rs = $mysqli->query($sql)) { 
           while ($row = $rs->fetch_assoc())
    {
           
    ?>
    
    <div class="col-md-12 text-center">
      <h1><?php echo"". $row['nom'] .""; ?></h1>
    
    <ol class="breadcrumb">								
       <li class="breadcrumb-item active">
          <?php echo"". $row['prenom'] .""; ?>
      </li>
    </ol>
    	</div>	
    <?php 
    //======== FIN du WHILE
    //========= FIN DU IF
    }
    }
     } 
    } 
    mysqli_close($mysqli);
    ?>
    
    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      As-tu expliqué ce qui se passait pour un ID qui n’existe pas?
      Il manque un
      else
      pour le
      if
      en ligne 20.
      1
  7. lina-24 Messages postés 65 Statut Membre 4
     
    Je n'ai pas pensé à ça ! pouvez vous m'envoyer le code [...] pour un ID qui n’existe pas .. else pour le if en ligne 20
    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      Comment se comporte le programme pour un ID qui n’existe pas?
      0
  8. lina-24 Messages postés 65 Statut Membre 4
     
    je Vérifier si le ID est ( faux | erroné | inexistant ) . j'envois à page not found 404!

    
    // ====== Vérifier si le ID est ( faux  |  erroné  |  inexistant ) . j'envois à  page not found 404!
    ......
     {
       echo "<script>location.href='personal.php?pg=404';</script>"; 
    
    
    0
  9. lina-24 Messages postés 65 Statut Membre 4
     
    ça ne marche pas !
    <?php 
    doDB();
    	
    // Vérifier si la variable est vide. j'envois à  page not found 404!
    if (empty ($_GET['id'] ))	
     {
    	  echo "<script>location.href='personal.php?pg=404';</script>"; 
    	
    	}	
    //exécute les instructions  au cas où l'expression du if est false. 
    else
    {
    $id=$_GET['id'];
     $sql="select * from article where id='$id'";
     if ($rs = $mysqli->query($sql)) { 
           while ($row = $rs->fetch_assoc())
                     
    	   $id=$_GET['id'];								
    
    if ($rs = $mysqli->query($sql)) { 
           while ($row = $rs->fetch_assoc())
    {
    //  Vérifier si le ID est ( faux  |  erroné  |  inexistant ) . j'envois à  page not found 404!	
    else {
        echo "<script>location.href='personal.php?pg=404';</script>"; 
    }      
    ?>
    
    
    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       
      Il semble qu'il y a un problème avec le nombre de { et de }.
      0
    2. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 832
       
      Bonjour
      <?php
      
      doDB();
      
      //récupération PROPRE des variables AVANT de les utiliser
      $id = !empty($_GET['id']) ? $_GET['id'] : NULL;
      
      // Vérifier si la variable est vide. j'envois à  page not found 404!
      if (!$id) {
        echo "<script>location.href='personal.php?pg=404';</script>";
        exit;
      } else {
      
        $sql = "select * from article where id='$id'";
        if ($rs = $mysqli->query($sql)) {
          while ($row = $rs->fetch_assoc()) {
            // boucle pour traiter le résultat de la requête
            // ...
          }
        } else {
          //  Vérifier si le ID est ( faux  |  erroné  |  inexistant ) . j'envois à  page not found 404!	
          echo "<script>location.href='personal.php?pg=404';</script>";
          exit;
        }
      }
      ?>
      
      1
      1. lina-24 Messages postés 65 Statut Membre 4 > jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention  
         
        un Grand Merci ( Super Jordane45 ) toujours au top
        1
  10. lina-24 Messages postés 65 Statut Membre 4
     
    juste un truc !
    Vérifier si le ID est ( faux | erroné | inexistant ) . j'envois à page not found 404! à la fin ne marche pas.
    si je tape sur la barre d'adresse id=100 je reste sur ma page !
    0