Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1148 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Suivante
Auteur Sujet :

Creer sur la meme page un formulaire de recherche fixe et les resul

n°1845347
Profil sup​primé
Posté le 30-01-2009 à 19:12:48  answer
 

Reprise du message précédent :
bon, fait les modifications qu'on t'a demandées et montre nous où tu en es.

mood
Publicité
Posté le 30-01-2009 à 19:12:48  profilanswer
 

n°1845531
essse
Posté le 31-01-2009 à 15:02:29  profilanswer
 

bjr
 
ca passe,le souci des majuscules est passe grace a ton code j'ai pu corriger certaines choses qui ont tout eclairci!!!merci encore!!!
 
autre souci svp  :
 
1/j'ai remarque que lorsque le nom du fichier possede un caracter comme "é", "ê" ou autres, ca ne passe pas c'est a dire que le code ecrit le nom du fichier en majuscule (ce qui a ete demande )mais de cette maniere par exemple "fenêtre" devient "FENËTRE" et lorsque j'ecris "fenetre" dans le POST il ne le (le fichier correspondant a la recherche)voit pas...puis je regler ce probleme svp?  
 
2/ j'aimerais apporter une modification:  
 
a/ avoir une option dans le formulaire qui permette a l'utilisateur de donner une date approximative de la creation du fichier et une autre otpion qui indiquerait si la recherche doit se faire avant ou apres cette date (qui sera complette c'est a dire jjmmaa, les dates sont de cette forme)
Question svp: je pensais faire un (explod de( substr des 4 derniers elements du fichier (rappeler vous les fichiers sont de cette forme SEXX_TYPE_REFERENCE_OBJET_DATE.PDF) ) ) mais je ne sais pas si le explode sera possible puisqu'il n'y a pas de delimiteurs...brefbje cherche comment faire
 
b/ une option approximative par mois avec meme question avant ou apres;
 
c/ une derniere option par année
 
3/et enfin une fois le formulaire rempli dans la mesure ou j'ai cree 2 block, un fixe qui contient le formulaire et un autre en dessous qui contient les recherche, j'aimerais donc qu'une fois la recherche lancée la recherche reste sur le formulaire pour que l'utilisateur voit ce qu'il a demandé
 
merci a vous et bon weekend!!!
(ps: aspirateur tu te trompes mon but bien au contraire est d'enlever ces AND et les IF imbriqués (je ne comprends que ca fonctionne alors qu'on ne renseigne qu'un POST) )
 
ha joubliais voici le code corrige, j'ai mis un if POST_validez, ai je le droit?
 
[code=php]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<link rel="stylesheet" type="text/css" title="site2" href="site2.css" />
<head>
</head>
<body>
   
<div id="formulaire">
   
     Recherche des fichiers:
   
  <form action= "new2.php" method="post">  
       <p>Corps administratif     : <input type ="text" name= "section" /> </P>            
    <p>Type de courrier        : <input type ="text" name= "type"  /> </p>  
    <p>Reference du courrier: <input type ="text" name= "reference" /></p>  
    <p>Objet du courier   : <input type ="text" name= "objet" />   </p>  
             <p>Date du courier (jjmmaa)   : <input type ="text" name= "date" />   </p>            
    <input type ="submit" name ="validez" value ="validez" />
    <input type="reset" value="effacez"/>  
  </form>        
</div>
 
<div id="resultat">
   
 <?php
       if (isset($_POST['validez']))
    {  
   // on traite le formulaire en ouvrant le dossier et en entrant dans la fonction
   
          $dossier = 'Courrier/' ;
          $list = scandir($dossier);
          foreach ($list as $chaine) //identique a for mais specifié au tableau
               {  
        $divfichier = explode('_',$chaine); //on decoupe les fichiers
   
 // jeu de majuscule sur les POST  
 
           $section = strtoupper($_POST['section']);
              $type = strtoupper ($_POST['type']);
                    $reference = strtoupper ($_POST['reference']);
                    $objet = strtoupper ($_POST['objet']);
                 $date = strtoupper ($_POST['date']);
 
   // jeu de majuscule sur les fichiers  
     
               $chaine = strtoupper ($chaine);  
     
 // on comparre les POSTS au fichiers
     
           if ((preg_match('`'.$section.'`', $divfichier[0])) AND
      (preg_match('`'.$type.'`', $divfichier[1]))  AND
       (preg_match('`'.$reference.'`', $divfichier[2]))AND
        (preg_match('`'.$objet.'`', $divfichier[3])) AND
         (preg_match('`'.$date.'`', $divfichier[4])))
                    { echo '<a href="'.$dossier.$chaine.'">'.$chaine.'</a><br/>'; }  
      }
        }   ?>        
 </div>
</body>
</html>
   
 
 
 
 [/php]


Message édité par essse le 31-01-2009 à 15:15:37
n°1845709
essse
Posté le 01-02-2009 à 09:30:33  profilanswer
 

BJR  
 
j'ai eu a faire cela pour la date approximative qu'en pensez vous svp

Code :
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
  3. <link rel="stylesheet" type="text/css" title="site2" href="site2.css" />
  4. <head>
  5. </head>
  6. <body>
  7.     
  8. <div id="formulaire">
  9. <div id="date">
  10. <?php
  11. $date = date("d-m-Y" );
  12. $heure = date("H:i" );
  13. Print("$date  $heure" );
  14. echo "<br/>";
  15. ?></div>            
  16.     <h1>Recherche des fichiers</h1>
  17.     
  18.      <form action= "testeAA.php" method="post">    
  19.              <p>Corps administratif     : <input type ="text" name= "section" /> </P>            
  20.              <p>Type de courrier        : <input type ="text" name= "type"  /> </p>
  21.              <p>Reference du courrier: <input type ="text" name= "reference" /></p>
  22.              <p>Objet du courrier   : <input type ="text" name= "objet" />   </p>
  23.             <p>Date du courrier (jjmmaa)   : <input type ="text" name= "date" />   </p>
  24.              <p>Date approximative du courrier par jours (jj)   : <input type ="text" name= "dateApproxiJJ" /></p>          
  25.              <p>Date approximative du courrier par mois (mm)   : <input type ="text" name= "dateApproxiMM" /></p>
  26.              <p>Date approximative du courrier par annees (aa)   : <input type ="text" name= "dateApproxiAA" /></p>
  27.  
  28.  
  29.              <input type ="submit" name ="validez" value ="validez" />
  30.              <input type="reset" value="effacez"/>    
  31.      </form>                         
  32. </div>
  33.  
  34. <div id="resultat">
  35.     
  36.     <?php
  37.           if (isset($_POST['validez']))
  38.           {    
  39.   // on traite le formulaire en ouvrant le dossier et en entrant dans la fonction
  40.     
  41.              $dossier = 'Courrier/' ;
  42.              $list = scandir($dossier);
  43.              foreach ($list as $chaine) //identique a for mais specifié au tableau
  44.                   {     
  45.                     $divfichier = explode('_',$chaine); //on decoupe les fichiers
  46.                     
  47.                     $ApproxiJJ = substr($divfichier[4] , 0, 2);
  48.                     $ApproxiMM = substr($divfichier[4] , 2, 2);
  49.                     $ApproxiAA = substr($divfichier[4] , 4, 2);
  50.  
  51.     // jeu de majuscule sur les POST
  52.  
  53.                     $section = strtoupper($_POST['section']);
  54.                     $type = strtoupper ($_POST['type']);
  55.                    $reference = strtoupper ($_POST['reference']);
  56.                    $objet = strtoupper ($_POST['objet']);
  57.                     $date = strtoupper ($_POST['date']);
  58.                     $dateApproxiJJ = strtoupper ($_POST['dateApproxiJJ']);
  59.                     $dateApproxiMM = strtoupper ($_POST['dateApproxiMM']);
  60.                     $dateApproxiAA = strtoupper ($_POST['dateApproxiAA']);
  61.  
  62.  
  63.  
  64.   // jeu de majuscule sur les fichiers
  65.                     
  66.                     $chaine = strtoupper ($chaine);
  67.                     
  68.     // on comparre les POSTS au fichiers
  69.                 
  70.                     if ((preg_match('`'.$section.'`', $divfichier[0])) AND
  71.                         (preg_match('`'.$type.'`', $divfichier[1]))  AND
  72.                             (preg_match('`'.$reference.'`', $divfichier[2]))AND
  73.                                 (preg_match('`'.$objet.'`', $divfichier[3])) AND
  74.                                     (preg_match('`'.$date.'`', $divfichier[4])) AND
  75.                                             ((preg_match('`'.$dateApproxiJJ.'`', $ApproxiJJ))) AND
  76.                                                  ((preg_match('`'.$dateApproxiMM.'`', $ApproxiMM))) AND
  77.                                                       ((preg_match('`'.$dateApproxiAA.'`', $ApproxiAA)))
  78.  
  79.                                               )
  80.  
  81.                        { echo '<a href="'.$dossier.$chaine.'">'.$chaine.'</a><br/>'; }
  82.                   }
  83.            }   ?>                   
  84. </div>
  85. </body>
  86. </html>


 
j'ai donc une recherche selon le jour, le mois et l'annee.qu'en pensez vous svp?

n°1845713
Profil sup​primé
Posté le 01-02-2009 à 09:54:32  answer
 

pourquoi tu n'écoutes pas les conseils qu'on te donne ?

n°1845715
essse
Posté le 01-02-2009 à 10:02:33  profilanswer
 

bjr
 
mais je pense avoir fait comme vous m'avez conseillé...a quel niveau as tu remarque cela stp?

n°1845771
essse
Posté le 01-02-2009 à 12:05:34  profilanswer
 

luc@s...j'ai revu et revu les remarque que vous avez eu a me faire et que  j'ai suivi (je viens de revoir mon code pour la enieme fois) ...ou bien j'ai omis quelque chose?

n°1845817
Profil sup​primé
Posté le 01-02-2009 à 15:23:38  answer
 

strpos ?

n°1845819
essse
Posté le 01-02-2009 à 15:30:03  profilanswer
 

ouille!!...ok!
je refais le code sorry...

n°1845977
essse
Posté le 02-02-2009 à 10:18:49  profilanswer
 

bjr  
 
j'ai refait le code avec strpos mais il ne passe pas, j'ai le message suivant:  
Warning: strpos() [function.strpos]: Empty delimiter in C:\wamp\www\testeAA.php on line 72
 
voici le code  

Code :
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
  3. <link rel="stylesheet" type="text/css" title="site2" href="site2.css" />
  4. <head>
  5. </head>
  6. <body>
  7.     
  8. <div id="formulaire">
  9. <div id="date">
  10. <?php
  11. $date = date("d-m-Y" );
  12. $heure = date("H:i" );
  13. Print("$date  $heure" );
  14. echo "<br/>";
  15. ?></div>            
  16.     <h1>Recherche des fichiers</h1>
  17.     
  18.      <form action= "testeAA.php" method="post">    
  19.              <p>Corps administratif     : <input type ="text" name= "section" /> </P>            
  20.              <p>Type de courrier        : <input type ="text" name= "type"  /> </p>
  21.              <p>Reference du courrier: <input type ="text" name= "reference" /></p>
  22.              <p>Objet du courrier   : <input type ="text" name= "objet" />   </p>
  23.             <p>Date du courrier (jjmmaa)   : <input type ="text" name= "date" />   </p>
  24.              <p>Date approximative du courrier par jours (jj)   : <input type ="text" name= "dateApproxiJJ" /></p>          
  25.              <p>Date approximative du courrier par mois (mm)   : <input type ="text" name= "dateApproxiMM" /></p>
  26.              <p>Date approximative du courrier par annees (aa)   : <input type ="text" name= "dateApproxiAA" /></p>
  27.  
  28.  
  29.              <input type ="submit" name ="validez" value ="validez" />
  30.              <input type="reset" value="effacez"/>    
  31.      </form>                         
  32. </div>
  33.  
  34. <div id="resultat">
  35.     
  36.     <?php
  37.           if (isset($_POST['validez']))
  38.           {    
  39.   // on traite le formulaire en ouvrant le dossier et en entrant dans la fonction
  40.     
  41.              $dossier = 'Courrier/' ;
  42.              $list = scandir($dossier);
  43.              foreach ($list as $chaine) //identique a for mais specifié au tableau
  44.                   {     
  45.                     $divfichier = explode('_',$chaine); //on decoupe les fichiers
  46.                     
  47.                     $ApproxiJJ = substr($divfichier[4] , 0, 2);
  48.                     $ApproxiMM = substr($divfichier[4] , 2, 2);
  49.                     $ApproxiAA = substr($divfichier[4] , 4, 2);
  50.  
  51.     // jeu de majuscule sur les POST
  52.  
  53.                     $section = strtoupper($_POST['section']);
  54.                     $type = strtoupper ($_POST['type']);
  55.                    $reference = strtoupper ($_POST['reference']);
  56.                    $objet = strtoupper ($_POST['objet']);
  57.                     $date = strtoupper ($_POST['date']);
  58.                     $dateApproxiJJ = strtoupper ($_POST['dateApproxiJJ']);
  59.                     $dateApproxiMM = strtoupper ($_POST['dateApproxiMM']);
  60.                     $dateApproxiAA = strtoupper ($_POST['dateApproxiAA']);
  61.  
  62.  
  63.  
  64.   // jeu de majuscule sur les fichiers
  65.                     
  66.                     $chaine = strtoupper ($chaine);
  67.                     
  68.     // on comparre les POSTS au fichiers
  69.                 
  70.                     if ((strpos($divfichier[0], $section)) AND
  71.                         (strpos($divfichier[1], $type))  AND
  72.                             (strpos($divfichier[2], $reference))AND
  73.                                 (strpos($divfichier[3], $objet)) AND
  74.                                     (strpos($divfichier[4], $date)) AND
  75.                                             ((strpos($ApproxiJJ, $dateApproxiJJ))) AND
  76.                                                  ((strpos($ApproxiMM, $dateApproxiMM))) AND
  77.                                                       ((strpos($ApproxiAA, $dateApproxiAA)))
  78.  
  79.                                               )
  80.  
  81.                        { echo '<a href="'.$dossier.$chaine.'">'.$chaine.'</a><br/>'; }
  82.                   }
  83.            }   ?>                   
  84. </div>
  85. </body>
  86. </html>


Message édité par essse le 02-02-2009 à 10:19:12
n°1846178
Profil sup​primé
Posté le 02-02-2009 à 18:12:39  answer
 

vérifie la valeur des variables passées comme argument à l'appel de strpos qui correspond à la ligne du message d'erreur.

mood
Publicité
Posté le 02-02-2009 à 18:12:39  profilanswer
 

n°2149280
lily11
Posté le 13-07-2012 à 17:43:37  profilanswer
 


Slt  
Aidé mois s’il veut plait, j’ai trois bouton rechercher, ajouter et supprimer, les deux boutons dernier fonction bien sans code java que j’ai  ajouter pour rechercher, mais malheureusement j’ai besoin de faire fonctionné les trois boutons dans la même la page jsp ,je travail avec struts le model MVC2 sur Eclipse ,la base de données et sur MYSQL ,voila mon code :
-la page jsp:
<%@page import="ma.formation.modele.Etudiant"%>
<%@ page import="java.util.*"%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
 pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
 
 
<body>
<%
  ArrayList liste = new ArrayList();
 liste =  (ArrayList)request.getAttribute("maListe" );
 Iterator monIterator = liste.iterator();
 while (monIterator.hasNext()) {
  Etudiant etudiant = (Etudiant) monIterator.next();
%>
<script type="text/javascript">
 function recherche() {
    document.forms["form1"].elements["cin2"].value="<%=etudiant.getCin()%>";
    document.forms["form1"].elements["nom"].value="<%=etudiant.getNom()%>";
    document.forms["form1"].elements["prenom"].value="<%=etudiant.getPrenom()%>";
       document.forms["form1"].elements["age"].value="<%=etudiant.getAge()%>";
 
  this.document.monFormulaire.action = "rechercher.do";
  this.document.monFormulaire.submit;
 }
 
 function ajout() {
  this.document.monFormulaire.action = "ajouter.do";
  this.document.monFormulaire.submit;
 }
 
 function sup() {
  this.document.monFormulaire.action = "supprimer.do";
  this.document.monFormulaire.submit;
 }
</script>
 
<%
}
%>
 
<%if (request.getAttribute("msg" )!=null) {%>
<p align="center">
<h4> <%=request.getAttribute("msg" ) %></h4>
<%} %>
<form name="monFormulaire" method="post">
<table border="1" bordercolor="red">
 <caption>Gestion des etudiants STRUTS1</caption>
 <tr>
  <td>Cin:<input type="text" name="cin" /></td>
  <td>Nom:<input type="text" name="nom" /></td>
  <td>Prenom:<input type="text" name="prenom" /></td>
  <td>Age:<input type="text" name="age" /></td>
 
 </tr>
 <tr>
  <td><input type="submit" value="Recherche Etudiant" onclick="recherche()" /></td>
  <td><input type="submit" value="Ajout Etudiant" onclick="ajout()" /></td>
  <td><input type="submit" value="Supression Etudiant" onclick="sup();" /></td>
  <td>&nbsp;</td>
 
 </tr>
 
</table>
</form>
</body>
</html>
 
-Action:
package ma.formation.action;
import java.util.ArrayList;
 
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import ma.formation.dao.EtudiantDAO;
import ma.formation.form.EtudiantForm;
import ma.formation.modele.Etudiant;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
 
public class rechercherAction extends Action{
 @Override
 public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
   
   String cin=request.getParameter("cin" );
   EtudiantForm maForm = (EtudiantForm)form;
   Etudiant etudiant=new Etudiant(cin);
   ArrayList <Etudiant> liste =new ArrayList<Etudiant>();
   liste=EtudiantDAO.rechercheEtudiants(etudiant);
   request.setAttribute("maListe", liste);
   
  return mapping.findForward("success" );
 }
 
 
}
 
-et le code pour la requête dans la classe rechercher:
 
public static ArrayList<Etudiant> rechercheEtudiants(Etudiant etudiant){
 
   int resultat=0;
   ResultSet rs=null;
   Statement prpStmt = null;
   ArrayList <Etudiant> liste =new ArrayList<Etudiant>();
   
   try {
    Connection con = ConnectionManager.getConnection();
    //String sql="select * from etudiant where cin ='g'";
    String sql="select * from etudiant where cin ='"+etudiant.getCin()+"'";
    prpStmt = con.createStatement();
    rs=prpStmt.executeQuery(sql);
 
    while (rs.next()){
     
     liste.add(new Etudiant(rs.getString("cin" ),rs.getString("nom" ),rs.getString("prenom" ),rs.getInt("age" )));
     
     
    }
     
     
     
    rs.close();
    prpStmt.close();
    con.close();
   }catch (SQLException e) {
    e.printStackTrace();
   }
     
   catch (Exception e) {
    e.printStackTrace();
   }
   
   
   return liste;
  }
     
 
 

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
formulaire multicritere de fichier pdf (par le nom de ces derniers)script formulaire + newsletter
Développement ou recherche de plugin FirefoxFormulaire conditionnel
recherche algo pour optimiser une recherche dans un graphe cycliqueJouer automatiquement une animation au lancement de la page
Blocage accès formulaire & update automon formulaire
fenetre de recherche google 
Plus de sujets relatifs à : Creer sur la meme page un formulaire de recherche fixe et les resul


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR