Recherche sur partie de mot

Résolu
gao77610 Messages postés 4 Date d'inscription mardi 30 août 2005 Statut Membre Dernière intervention 5 mai 2012 - 5 mai 2012 à 19:26
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 - 5 mai 2012 à 19:44
Bonjour à tous,

Je cherche à créer un INPUT pour faire une recherche sur une seule ligne (exemple N° de série) d'une bdd , sur 6 caractère uniquement ( le N° de série comprenant 18 caractères )

Voici la page telle quelle apparait, il n'y a aucun soucis dedans, je cherche juste à intégrer une recherche, car il y a plus de 200 articles et les 12 premier caractères sont les même.

J'espère avoir été explicite

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv= "content-type" content="text/html; charset=windows-1250">
<meta name="generator" content="Dreamweaver CS5.5">
<title>Ordinateur</title>
</head>

<?php 
$db = mysql_connect('localhost', 'root', '') or die('HOST ?'); 
mysql_select_db('stock',$db) or die('DB ?'); 
$sql = 'SELECT * FROM uc order by id asc';
$req=mysql_query($sql) or die ('Erreur SQL !
'.$sql.'
'.mysql_error()); 
  echo '
';
  echo '';
echo '----
id, Modele, N° serie, Site, Etiquette, TNT, Action, ';
while($data = mysql_fetch_assoc($req)){
echo '----

'.$data['id'].',
'.$data['Modele'].',
'.$data['N° serie'].',
'.$data['Site'].',
'.$data['Etiquette'].',
'.$data['TNT'].',
[? Lister les UC]</center>';
?>
<?php
}
if(isset($_POST['Modifier']) && $_POST['Modifier']==="Modification" && $_SERVER['REQUEST_METHOD']==='POST'){
extract($_POST); 
      if(empty($Modele) OR empty($N°_serie)) 
      { 
      echo '<center>Attention, seul le champs  Site  peut rester vide !'; 
      echo '
Attention, seul le champs Etiquette peut rester vide !';
  echo '
Attention, seul le champs TNT peut rester vide !';
      echo '
[javascript:history.back(); Retour]</center>';
      }
      else 
      {   
      $sql  =" UPDATE `stock`.`uc` SET
      `Modele`=  '$Modele',
  `N° serie`= '$N°_serie',
      `Site`= '$Site',
      `Etiquette`= '$Etiquette',
      `TNT`= '$TNT'
  where id='".$id_modi."' ";
      mysql_query($sql) or die('Erreur SQL !'.$sql.'
'.mysql_error()); 
      echo '<center>Vos infos on été modifié !
'; 
      mysql_close(); 
      echo '[? Ajouter une UC]
</center>';
      unset($_POST);
      //header('Location: Adherents.php');exit;
$_SERVER['PHP_SELF'];
      } 
}
else if(isset($_POST['envoyer']) && $_POST['envoyer']==="Envoyer" && $_SERVER['REQUEST_METHOD']==='POST'){
/*LE FORMULAIRE EST POSTE*/
extract($_POST); 
      if(empty($Modele) OR empty($N°_serie)) 
      { 
      echo '<center>Attention, seul le champs  Site  peut rester vide !'; 
      echo '
Attention, seul le champs Etiquette peut rester vide !';
  echo '
Attention, seul le champs TNT peut rester vide !';
      echo '
[javascript:history.back(); Retour]</center>';
      }  
      else 
      { 
      $sql  =" INSERT INTO `stock`.`uc` (
      `Modele` ,
      `N° serie` ,
      `Site` ,
      `Etiquette` ,
      `TNT`
      ) VALUES ('$Modele','$N°_serie', '$Site', '$Etiquette', '$TNT')";       
      mysql_query($sql) or die('Erreur SQL !'.$sql.'
'.mysql_error()); 
      unset($_POST);
       $_SERVER['PHP_SELF'];
      echo 'Vos infos on été ajoutées.'; 
      mysql_close(); // on ferme la connexion 
      echo '[? Ajouter une UC]';
}
      } 
else {   ?>


  <form method="POST" action="">
    <center>
       Saisir les UC dans les cases prévues a cette effet. 


    </center>
    <center>
       Laissez vide les cases non utilisées.


       


    </center>
    Modele,
,

----

N° serie,
,

----

Site,
,

----

Etiquette,
,

----

TNT,


    
      
    


    

    <?php echo '[index.php Accueil]';?>
<?php echo '[routeur.php Routeur]';?>
<?php echo '[imprimante.php Imprimante]';?>
<?php echo '[ecran.php Ecran]';?>
  </form>


<?php
mysql_close();
}
?>

</html>


Merci par avance

1 réponse

NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
5 mai 2012 à 19:44
Bonjour,

As-tu regardé l'opérateur Like (si chaine) ?
Ou modulo (si numérique) ?

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
3
Rejoignez-nous