Vous n'êtes pas identifié(e).
Pages :: 1
Je suis bloqué depuis une semaine , alors je viens en vous esperant votre aide je devellope une petite application de recherche php mysql .une fois ma recherche est effectué je recoit le resultat sous un tableau sans probleme maintenant je veut lorsque je clique sur une ligne de mon tableau je dois recuperer la valeur du champs "reference"
et inserer cette valeur et la faire executer sur un formulaire pour afficher un resultat detaillé;
le tableau de resultat de recherche:
$avance_type = $_POST['type'];
$avance_reference = $_POST['reference'];
$avance_capacite = $_POST['capacite'];
$avance_energie = $_POST['energie'];
$avance_marque = $_POST['marque'];
$avance_annee = $_POST['annee'];
$avance_valve = $_POST['valve'];
$avance_nserie = $_POST['nserie'];
$avance_model = $_POST['model'];
$avance_volt = $_POST['volt'];
$avance_location = $_POST['location'];
$avance_typemat = $_POST['typemat'];
//
$select ="SELECT * FROM infos_tbl WHERE type LIKE '%$avance_type%' AND location LIKE '%$avance_location%' AND marque LIKE '%$avance_marque%' AND volt LIKE '%$avance_volt%' AND annee LIKE '%$avance_annee%' AND capacite LIKE '%$avance_capacite%' AND energie LIKE '%$avance_energie%' AND reference LIKE '%$avance_reference%' AND nserie LIKE '%$avance_nserie%' AND model LIKE '%$avance_model%' AND valve LIKE '%$avance_valve%' AND typemat LIKE '%$avance_typemat%' ";
$result=mysql_query($select) or die(mysql_error());
$total = mysql_num_rows($result);
mysql_close();
?>
<table width="100%" border="0">
<tr>
<td width="1%" height="102"> </td>
<td width="33%" bgcolor="#FFFFFF"><div align="right"><img src="logo.JPG" width="256" height="89"></div></td>
<td width="47%"><p> </p>
<table width="353" border="0" bordercolor="#0000FF" bgcolor="#0000FF">
<tr>
<td bgcolor="#FFFFFF"> <div align="center"><strong> Articles répondants aux critères recherchés </strong></div></td>
</tr>
</table> </td>
<td width="19%"> <table width="100%" border="0">
<tr>
<td nowrap bgcolor="#FFFFFF"><div align="right"> </div></td>
<td bordercolor="#FF0000" bgcolor="#FFFFFF"> </td>
</tr>
</table>
<div align="left">
<p>Nombre<span class="Style1">:<?php echo $total ?></span></p>
</div></td>
</tr>
</table>
<table width="100%" border="0" bordercolor="#FFFFFF" bgcolor="#FFFFFF">
<tr>
<td height="1" bordercolor="#FFFFFF" bgcolor="#FFFFFF"> </td>
</tr>
</table>
<table width="80%" border="1" align="center" cellspacing="1" bordercolor="#0000FF" bgcolor="#ffffff">
<tr>
<td align="center" valign="middle" bordercolor="#FFFFFF" bgcolor="#FFFFFF"><div align="center">
<link rel="stylesheet" href="2col_rightNav.css" charset="ISO-8859-1" type="text/css"/>
<?php
if($total) {
// début du tableau
echo '<table>'."\n";
// affichage
echo '<tr >';
echo '<td bgcolor="#3737FF"><b><div align="center"><strong><font color="#FFFFFF"><strong>Type</strong></font></strong></div></b></td>'; //<td><div align="center">ok</div></td>
echo '<td bgcolor="#3737FF"><b><div align="center"><strong><font color="#FFFFFF"><strong>Reference</strong></font></strong></div></b></td>';
echo '<td bgcolor="#3737FF"><b><div align="center"><strong><font color="#FFFFFF">Nserie</font></strong></div></b></td>';
echo '<td bgcolor="#3737FF"><b><div align="center"><strong><font color="#FFFFFF">Marque</font></strong></div></b></td>';
echo '<td bgcolor="#3737FF"><b><div align="center"><strong><font color="#FFFFFF">Model</font></strong></div></b></td>';
echo '<td bgcolor="#3737FF"><b><div align="center"><strong><font color="#FFFFFF">Annee</font></strong></div></b></td>';
echo '<td bgcolor="#3737FF"><b><div align="center"><strong><font color="#FFFFFF">Capacite</font></strong></div></b></td>';
echo '<td bgcolor="#3737FF"><b><div align="center"><strong><font color="#FFFFFF">Energie</font></strong></div></b></td>';
echo '<td bgcolor="#3737FF"><b><div align="center"><strong><font color="#FFFFFF">Typemat</font></strong></div></b></td>';
echo '<td bgcolor="#3737FF"><b><div align="center"><strong><font color="#FFFFFF">Valve</font></strong></div></b></td>';
echo '<td bgcolor="#3737FF"><b><div align="center"><strong><font color="#FFFFFF">Volt</font></strong></div></b></td>';
echo '<td bgcolor="#3737FF"><b><div align="center"><strong><font color="#FFFFFF">Location</font></strong></div></b></td>';
echo '</tr>'."\n";
// lecture et affichage des résultats , 1 résultat par ligne
$gris = false;
while($row = mysql_fetch_array($result)) {
if ($gris) $gris=false; else $gris=true;
if ($gris)
{
echo "<tr bgcolor='#E8E8E8' onclick=\"recup_id('<?php echo $row['id'];?>')\"
style=\"cursor:pointer;\" onMouseover=\"this.style.backgroundColor='#99FF99'\" onmouseOut=\"this.style.backgroundColor=''\" >";
}
else
{
echo "<tr bgcolor='#F8F8F8' style=\"cursor:pointer;\" onMouseover=\"this.style.backgroundColor='#99FF99'\" onmouseOut=\"this.style.backgroundColor=''\"> ";
}
echo '<td >'.$row['type'].'</td>';
echo '<td >'.$row['reference'].'</td>';
echo '<td >'.$row['nserie'].'</td>';
echo '<td >'.$row['marque'].'</td>';
echo '<td >'.$row['model'].'</td>';
echo '<td >'.$row['annee'].'</td>';
echo '<td >'.$row['capacite'].'</td>';
echo '<td >'.$row['energie'].'</td>';
echo '<td >'.$row['typemat'].'</td>';
echo '<td >'.$row['valve'].'</td>';
echo '<td >'.$row['volt'].'</td>';
echo '<td >'.$row['location'].'</td>';
echo "</tr>";
}
echo '</div></table id=tableau>'."\n";
// fin du tableau.
//
}
else echo 'Pas d\'enregistrements correspondant a votre recherche';
?>
<p> </p>
</div></table>
le formulaire qui une fois executer va m'afficher resultat detaillé est:
<form action= "FicheUpdate2.php" method="post" enctype="multipart/form-data">
<fieldset>
<legend><b></b></legend>
<table> <tr> <td>reference : </td>
<td><input name="reference" type="text" value="" size="20" maxlength="10"/></td></tr>
<tr><td>Modifier : </td> <td><input type="submit" value="Modifier"/></td></tr>
</table>
</fieldset>
</form>
merci de votre aide j'en ai absolument besoin
Hors ligne
Bonjour,
Déjà je ne comprends pas la syntaxe de ton début de code, normalement pour chaque if tu dois avoir
Ensuite pour ton tableau je te suggère pour récupérer l'info recherchée en java dans recup_id(), de créer une id='val_x' par ex dans le champ que tu veux récup (ici une div) et de faire un document.getElementById('val_x') avec la propriété adaptée à ton champ. (pour une div c'est .innerHtml même si tu en as d'autres)
Si tu as des soucis pour savoir quelle ligne tu as sélectionné, crée une colonne supplémentaire avec un checkbox dedans avec comme id ton numéro de ligne.
Dernière modification par Jc (23-04-2010 14:43:33)
POO PHP+Ajax en MVC avec PDO et Bases de données épaisses : What else?
Hors ligne
j'essaye d'eviter le java est ce que c'est pas fesable uniquement en php
Hors ligne
Tu peux toujours le faire en VBscript^^.
Ca sera beaucoup plus lourd en php car ca t'obligera a passer par un formulaire qui devra se passer la variable de sélection à lui meme ex:
et tu devras inclure le traitement de la variable dans ton fichier du style,
Fut un temps ou je me disais des trucs du style, "le java c'est nul on peut tout faire sans", "c'est pas demain la veille que je ferais du java"... Crois moi sur parole, le javascript c'est I N C O N T O U R N A B L E. Gagne du temps et mets toi y sans plus tarder, ca te fera gagner un temps précieux et tu ne pourras plus t'en passer rapidement^^
Dernière modification par Jc (23-04-2010 14:50:48)
POO PHP+Ajax en MVC avec PDO et Bases de données épaisses : What else?
Hors ligne
rien a dire je suis de votre avis
Hors ligne
Moi pas.
Le PHP ne peut être contré par l'utilisateur, le javascript se désactive lui par contre.
Donc il ne faut jamais omettre le traitement PHP. Le traitement javascript n'est là que pour plus de convivialité et d'interactivité avec l'utilisateur.
Hors ligne
je suis tjs bloqué:
function recup_id(id)
{ location.href=('update2.php?id='+id); }
onclick="recup_id('<?php echo $row['id'];?>')"
MAIS CA DONNE RIEN
Hors ligne
Je partage l'avis de xTG.... même si j'use et abuse du javascript, cela reste EN COMPLÉMENT car tout le monde peut le désactiver (moi le 1er)
function recup_id(id)
{ location.href=('update2.php?id='+id); }
onclick="recup_id('<?php echo $row['id'];?>')"
ta balise php n'est pas au bon endroit !!!!
Ta fonction, c'est du php... alors pourquoi tu dis que seul le paramètre l'est
MERCI de lire le mode d'emploi avant de poster !!
Hors ligne
je suis debutant et j'aimerai bien desactivé le java mais est ce que je peut m'ensortir avec le seul php? je teste ton code et je te repond tout de suite merci
Hors ligne
Pour conseil, commence par y recourir, mais de suite après, prends le temps de découvrir les parades et comment le contourner avec php
P.S : sympa l'animation du chariot élévateur pour le menu
MERCI de lire le mode d'emploi avant de poster !!
Hors ligne
je vous refile le code entier et essaye de me dire ou je dois inserer votre ligne:
1.onclick="<?php echo recup_id('.$row['id'].');?>";
voila mon code [NdM : Supprimé pour la lisibilité car reprends le meme code qu'au premier post]
Hors ligne
merci ALNOSS pour ton complement concernant le chariot, cependant je suis toujours bloquer pour mon prb
Hors ligne
1. pense au balise [ code=php] et [ /code] (je l'ai fait sur ton code : c'est quand meme plus clair)
2. où le mettre : là où tu souhaites avoir ton effet.... c'est toi qui décide !
/!\ Attention à tes concaténations !!
MERCI de lire le mode d'emploi avant de poster !!
Hors ligne
portion de code /
function recup_id()
{location.href=('update2.php?id='+id); }
$gris = false;
while($row = mysql_fetch_array($result)) {
if ($gris) $gris=false; else $gris=true;
if ($gris) {
echo "<tr bgcolor='#E8E8E8' onclick=""\"<?php lafonctionici ;?>"\" style=\"cursor:pointer;\" onMouseover=\"this.style.backgroundColor='#99FF99'\" onmouseOut=\"this.style.backgroundColor=''\" >";}
else {
echo "<tr bgcolor='#F8F8F8' onclick="\<?php lafonction ;?>"\" style=\"cursor:pointer;\" onMouseover=\"this.style.backgroundColor='#99FF99'\" onmouseOut=\"this.style.backgroundColor=''\"> ";}
Hors ligne
Comme ta ligne est déjà en php, il faut que tu apprennes a concaténer !!
MERCI de lire le mode d'emploi avant de poster !!
Hors ligne
DESOLE de tout ce derangement en effet il ya a peine 10jours que j'ai commencer a bidouiller avec le php je dois retourner apprendre un peu le cours
merci pour votre aide
Hors ligne
function recup_id()
{location.href=('update2.php?id='+id); }
$gris = false;
while($row = mysql_fetch_array($result)) {
if ($gris) $gris=false; else $gris=true;
if ($gris) {
echo "<tr bgcolor='#E8E8E8' onclick=""\"'.recup_id($row['id']).'"\" style=\"cursor:pointer;\" onMouseover=\"this.style.backgroundColor='#99FF99'\" onmouseOut=\"this.style.backgroundColor=''\" >";}
else {
echo "<tr bgcolor='#F8F8F8' onclick="\"'.recup_id($row['id']).'"\" style=\"cursor:pointer;\" onMouseover=\"this.style.backgroundColor='#99FF99'\" onmouseOut=\"this.style.backgroundColor=''\"> ";}
echo '<td >'.$row['id'].'</td>';
echo '<td >'.$row['type'].'</td>';
echo '<td >'.$row['reference'].'</td>';
echo '<td >'.$row['nserie'].'</td>';
echo '<td >'.$row['marque'].'</td>';
echo '<td >'.$row['model'].'</td>';
echo '<td >'.$row['annee'].'</td>';
echo '<td >'.$row['capacite'].'</td>';
echo '<td >'.$row['energie'].'</td>';
echo '<td >'.$row['typemat'].'</td>';
echo '<td >'.$row['valve'].'</td>';
echo '<td >'.$row['volt'].'</td>';
echo '<td >'.$row['location'].'</td>';
echo "</tr>";
}
echo '</div></table id=tableau>'."\n";
// fin du tableau.
//
}
else echo 'Pas d\'enregistrements correspondant a votre recherche';
?>
<p> </p>
</div></table>
Hors ligne
Ligne 82 & 84 : il y a des " de trop
Regarde plutot :
Il serait aussi bon que tu uniformises ton code :
echo "<td>" du coté, echo '<td>' de l'autre.... soit tu choisis l'un, soit l'autre, mais pas tout les 2... c'est brouillon
Enfin, ton <?php echo $total ?> devrait avoir un ; --> <?php echo $total;?>
Ce sera tout pour aujourd'hui, je file !! Consulte un peu le site, tu apprendras bcp des méthodes
MERCI de lire le mode d'emploi avant de poster !!
Hors ligne
OUI c'est corrigé;
Parse error: syntax error, unexpected '=' in C:\PERSONNEL\EasyPHP-5.3.2\www\search1.php on line 76
Hors ligne
GRAND MERCI
Hors ligne
Pages :: 1