Portail PHP

Forum de discussion et d'aide au php

Vous n'êtes pas identifié.

Annonce

Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides.
FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans.
Proposez vos news : si vous avez un evenement à annoncer
RefStats : Analysez votre positionnement sur les moteurs de recherche
 

#1 15-06-2009 08:50:52

johannis
Membre
Date d'inscription: 15-06-2009
Messages: 7

liens href sur chaque ligne d'un tableau

Bonjour tout le monde, je suis nouveau sur le forum.
Je viens ici pour vous demander de l'aide (lol). En fait je dois faire un projet qui consiste a créer un moteur de recherche sur une base de donnée SQL, j'ai donc un formulaire de champs qui me ramene sur une page .php pour afficher le resultat sous forme d'un tableau. Dans ce tableau j'ai tous mes resultat classés. Jusqu'ici pas de probleme, maintenant je voudrais mettre un lien html href sur chaque ligne mais comme mon tableau a été créer grace a la fonction odbc_fetch_row et que les resultats sont affichés grace a la fonction odbc_result je n'arrive pas a trouvé chaque pour ensuite mettre un lien sur chacune d'entre-elles.
Je vous remercie tout d'abord et j'espere avoir été assez claire :s

Voici un morceau de Code:

Code:

# perform the query 
            $result = odbc_exec($connect, $query);

            # fetch the data from the database
    
            echo "<form action=\"recherche.html\">";
                echo"<center><input type=\"submit\" value=\"Nouvelle Recherche\"></center>";
            echo "</form>";
            echo "<table align=\"center\" class=\"dTable\" width=\"78%\" border=\"0\" cellspacing=\"3\"><tr bgcolor=\"#FFFFCC\">";
            echo "<th>Numero de la Facture</th>";
            echo "<th>Societe Emetrice</th>";
            echo "<th>Type de la Facture</th>";
            echo "<th>Nom de la Societe</th>";
            echo "<th>Numero de la Consultation</th>";
            echo "<th>Titre de la Consultation</th>";
            echo "<th>Numero Devis</th>";
            echo "<th>Montant de l'Accord</th>";
            echo "<th>Code Affaire</th>";
            echo "<th>Commande</th>";
            echo "<th>Matricule</th>";
            echo "<th>ETAT</th>";
            echo "<th>Date d'Accord</th>";
            echo "<th>Date de Facture</th></tr>";
    
                
            while ($row=odbc_fetch_row($result))
              {
                  $resultat=odbc_result($result,"NUM");
                $resultat1=odbc_result($result,"SOCIETE_EMETRICE");
                  $resultat2=odbc_result($result,"TYPE");
                $resultat3=odbc_result($result,"NOM_SOCIETE");
                $resultat4=odbc_result($result,"NUM_CONSULTATION");
                $resultat5=odbc_result($result,"TITRE_CONSULTATION");
                $resultat6=odbc_result($result,"NUM_DEVIS");
                $resultat7=odbc_result($result,"MONTANT_ACCORD");
                $resultat8=odbc_result($result,"CODE_AFFAIRE");
                $resultat9=odbc_result($result,"COMMANDE");
                $resultat10=odbc_result($result,"MATRICULE");
                $resultat11=odbc_result($result,"ETAT");
                $resultat12=odbc_result($result,"DATE_ACCORD");
                $resultat13=odbc_result($result,"DATE_FACTURE");

                  echo "<tr><td>$resultat</td>";
                  echo "<td bgcolor=\"#F3F3F3\"><A href=$racine>$resultat1</a></td>";
                echo "<td>$resultat2</td>";
                echo "<td bgcolor=\"#F3F3F3\"><A href=$racine>$resultat3</a></td>";
                echo "<td>$resultat4</td>";
                echo "<td bgcolor=\"#F3F3F3\"><A href=$racine>$resultat5</a></td>";
                echo "<td>$resultat6</td>";
                echo "<td bgcolor=\"#F3F3F3\"><A href=$racine>$resultat7</a></td>";
                echo "<td>$resultat8</td>";
                echo "<td bgcolor=\"#F3F3F3\"><A href=$racine>$resultat9</a></td>";
                echo "<td>$resultat10</td>";
                echo "<td bgcolor=\"#F3F3F3\"><A href=$racine>$resultat11</a></td>";
                echo "<td>$resultat12</td>";
                echo "<td bgcolor=\"#F3F3F3\"><A href=$racine>$resultat13</a></td>";
                echo "<td><a href=\"#\" onclick=\"delLigne(this); return false;\">Supprimer</a></td></tr>";
                
              }
            //echo "<tr>$resultat_id</tr>";
            echo "</table>";
            # close the connection 
            odbc_free_result($result);
            odbc_close($connect);

Hors ligne

 

#2 15-06-2009 08:58:14

johannis
Membre
Date d'inscription: 15-06-2009
Messages: 7

Re: liens href sur chaque ligne d'un tableau

Je voulais aussi dire que sur cette partie de mon code j'ai justement tenté de mettre un lien qui est d'ailleur stockée dans une variable $racine mais ce lien n'apparait pas sur chaque ligne mais sur chaque colone.

Hors ligne

 

#3 15-06-2009 13:31:13

gogocopter
Membre
Lieu: Matane (Qc)
Date d'inscription: 02-06-2009
Messages: 38

Re: liens href sur chaque ligne d'un tableau

Bonjour,

  si je comprens bien, la variable $racine ne change pas de valeur au sein de la page? Si c'est le cas, afficher ce lien une seule fois serait suffisant.

Hors ligne

 

#4 15-06-2009 16:55:37

johannis
Membre
Date d'inscription: 15-06-2009
Messages: 7

Re: liens href sur chaque ligne d'un tableau

Re,
Non non justement le but c'est bien d'avoir un lien DIFFERENT sur Chacune des lignes. Mais je ne parviens pas à retrouver chaque ligne pour y mettre un lien. L'idée classique de faire une boucle en incrementant l'indice j'ai est pensé mais je ne sais pas du tout comment le faire surtout avec des fonctions odbc d'une base de donnée SQL(odbc_fetch_row,odbc_result...)
Merci de votre aide.

Hors ligne

 

#5 15-06-2009 20:11:16

gogocopter
Membre
Lieu: Matane (Qc)
Date d'inscription: 02-06-2009
Messages: 38

Re: liens href sur chaque ligne d'un tableau

Il ne semble pas y avoir de problème avec les fonctions ODBC.

Il y a ceci que je ne comprends pas:

> faire une boucle en incrementant l'indice
Pour faire quoi?

> retrouver chaque ligne pour y mettre un lien
Tu les as perdu? tongue

Hors ligne

 

#6 16-06-2009 03:44:31

johannis
Membre
Date d'inscription: 15-06-2009
Messages: 7

Re: liens href sur chaque ligne d'un tableau

Re,
>La boucle c'etait pour scanner toutes les lignes de mon tableau mais apparament cela ne sert a rien LoL.

>Retrouver mes lignes oui puisque je ne retrouve pas les "<tr></tr>".

Peut etre faut-il stocker toutes mes informations récupérées de ma base de donnée dans un tableau $tab[] ?

Hors ligne

 

#7 16-06-2009 13:33:49

gogocopter
Membre
Lieu: Matane (Qc)
Date d'inscription: 02-06-2009
Messages: 38

Re: liens href sur chaque ligne d'un tableau

Tout ce que je peux faire, c'est te conseiller d'améliorer tes connaissances en PHP (peut-être en HTML aussi) en lisant des tutoriaux sur le net, par exemple...

Hors ligne

 

#8 17-06-2009 17:04:05

lolo3129
Moderateur
Lieu: Paris
Date d'inscription: 10-05-2005
Messages: 860
Site web

Re: liens href sur chaque ligne d'un tableau

salut,

pour mettre un lien par ligne, il suffit de conserver un <a href="$racine" par <tr></tr> et pas un par <td></td>

ensuite, il faut que tu récupère un identifiant pour le passer en paramètre. ca donne quelque chose du style <a href="$racine?id=". odbc_result($result,"NUM")

et ensuite sur ta page racine tu peux accéder à $_GET['id']

Hors ligne

 

#9 18-06-2009 04:11:26

johannis
Membre
Date d'inscription: 15-06-2009
Messages: 7

Re: liens href sur chaque ligne d'un tableau

Merci pour votre aide en tous cas ! Je suis vraiment debutant donc j'ai un peu de mal ...
lolo3129, oui c'est ce que je voulais faire au depart c'est a dire mettre un lien href par <tr></tr> mais le probleme dans mon script c'est que je n'ai pas plusieur <tr></tr>, je n'en ai que un seul pourtant mon tableau a bien plusieurs lignes ..
Apres ta solution pour récupérer un identifiant m'interresse beaucoup, j'avais dejà fait des recherches sur google et justement j'etais tombé dessus or je n'ai jamais utilisé cet identifiant id et je pense que cela m'aiderait fortement.
Et si tu pouvais m'expliquer un peu plus comment on procède avec les variables $_GET['id'], <a href="$racine?id=". odbc_result($result,"NUM") ?

Hors ligne

 

#10 18-06-2009 05:30:19

johannis
Membre
Date d'inscription: 15-06-2009
Messages: 7

Re: liens href sur chaque ligne d'un tableau

J'ai une question aussi à te poser:

Cet identifiant id dont tu me parle que l'on récupere grace à la variable $_GET['id'] je le récupere où sa ? Dois-je le creé l'id ?

Dernière modification par johannis (18-06-2009 05:32:22)

Hors ligne

 

#11 19-06-2009 08:19:31

johannis
Membre
Date d'inscription: 15-06-2009
Messages: 7

Re: liens href sur chaque ligne d'un tableau

Plus personne pour m'aider sad

Une autre solution serait de récupérer le contenu de chacune de mes cellules dans mon tableau mais je ne sais pas faire.

Par exemple dans mon script lorsque je met:

$resultat=odbc_result($result,"NUM");

et quand j'affiche le résultat avec :

echo "<tr><td>$resultat</td>";

En fait ça va m'afficher comme résultats les contenus du champs "NUM" de ma table "RAP_SUIVI" qui correspondent à ma requete mais sont listés dans une colonne:

if ($Num_Facture!="")
{
    $query = $query." AND RAP_SUIVI.NUM Like '%".$Num_Facture."%'";
            }

C'est ça le soucis seulment à cause de l'affichage : echo "<tr><td>$resultat</td>" sa me donne tous directement dans une colonne donc si je veux récupérer un seul de ces résultats je ne peux pas

sad . Par exemple si je veux y mettre un lien sur un seul de ces résultats jpeux pas et c'est pour ça que dans mon script quand je met le lien sur <a href="Mon_Lien1">$resultat</a> c'est comme ci je

mettais un lien "Mon_Lien1"  sur toute la colonne "NUM".

J'attend patiement vos solutions smile

Hors ligne

 

#12 20-06-2009 05:16:10

lolo3129
Moderateur
Lieu: Paris
Date d'inscription: 10-05-2005
Messages: 860
Site web

Re: liens href sur chaque ligne d'un tableau

le while te permet de créer une ligne <tr> par ligne remontée par la requête SQL donc si tu as plusieurs <tr>, c'est que tu as plusieurs ligne dans ta base.

il faut garder la formule avec le racine?id=... et dans le code php de ta pag "racine", tu peux accéder à $_GET['id'] qui vaudra ce qui est dans la barre d'adresse.

Hors ligne