fonction dans un lien php

fonction dans un lien php - PHP - Programmation

Marsh Posté le 06-07-2006 à 11:12:28    

Bonjour à tous,
Voici mon problème:
J'ai une fonction qui détermine l'image d'affichage de mon icône suivant:

Code :
  1. <?
  2. if(empty($_REQUEST["Mac"])){      $Mac = "";             }
  3. else            {    $Mac = $_REQUEST["Mac"];     }
  4. /*Programme de description des seuils et images pour les adaptateurs*/
  5. //function choix_image($Mac)
  6. //{
  7.    $valeur_image="";
  8.  $sql_image=sprintf($sql_image,"SELECT Adaptateurs FROM Tsrv_Seuil WHERE Mac=`%s`", $Mac);
  9.  $sql_image1=sprintf($sql_image1,"SELECT COUNT(DISTINCT mac_celektron) AS Nbre FROM Tsrv_Adaptateurs WHERE Mac=`%s`", $Mac);
  10.  $result_image=mysql_query($sql_image);
  11.  $result_image1=mysql_query($sql_image1);
  12.  $row_image=mysql_fetch_array($result_image);
  13.  $row_image1=mysql_fetch_array($result_image1);
  14.  if($row_image[Adaptateurs]==row_image1[Nrbe])
  15.  {
  16.     $valeur_image='/images/fix01.gif';
  17.  }
  18.  if($row_image1[Nbre]<$row_image[Adaptateurs])
  19.  {
  20.     $valeur_image='/images/fix08.gif';
  21.  }
  22.  if($row_image1[Nbre]==NULL)
  23.  {
  24.     $valeur_image='/images/fix05.gif';
  25.  }
  26. ?>


 
 
Mon lien est le suivant:
 

Code :
  1. printf("<td ><a href='index.php?page=srv_adap_detail&Mac=%s'><img src='images/fix01.gif' border=0></a></td>",$row_licence['Mac'] );


 
Et je voudrais remplacer "<img src='images/fix01.gif'" par le résultat de ma fonction.
Merci pour votre aide, je débute en PHP et je m'excuse si ma question est bête.

Reply

Marsh Posté le 06-07-2006 à 11:12:28   

Reply

Marsh Posté le 06-07-2006 à 11:20:12    

Code :
  1. printf("<td ><a href='index.php?page=srv_adap_detail&Mac=%s'><img src='%s' border=0></a></td>",$row_licence['Mac'],$resultatDeTaFonction );

Reply

Marsh Posté le 06-07-2006 à 11:20:18    

Code :
  1. echo "<img src='".$valeur_image."'";

??
 
J'ai pas tout bien compris ta question en fait , tu parles de quelle fonction exactement ? function choix_image($Mac) ? (mais elle est en commentaire...)  :heink:

Reply

Marsh Posté le 06-07-2006 à 11:26:09    

Oui c'est vrai qu'elle est en commentaire, on m'a dit que cela ne sert à rien et que le nom du fichier php (je l'ai appelé fonction_image.php) suffirait.
Qu'en pense-tu?

Reply

Marsh Posté le 06-07-2006 à 11:30:12    

Code :
  1. <?
  2. if(empty($_REQUEST["Mac"])){      $Mac = "";             }
  3. else            {    $Mac = $_REQUEST["Mac"];     }
  4. /*Programme de description des seuils et images pour les adaptateurs*/
  5. function choix_image($Mac)
  6. {
  7.    $valeur_image="";
  8.  $sql_image=sprintf($sql_image,"SELECT Adaptateurs FROM Tsrv_Seuil WHERE Mac=`%s`", $Mac);
  9.  $sql_image1=sprintf($sql_image1,"SELECT COUNT(DISTINCT mac_celektron) AS Nbre FROM Tsrv_Adaptateurs WHERE Mac=`%s`", $Mac);
  10.  $result_image=mysql_query($sql_image);
  11.  $result_image1=mysql_query($sql_image1);
  12.  $row_image=mysql_fetch_array($result_image);
  13.  $row_image1=mysql_fetch_array($result_image1);
  14.  if($row_image[Adaptateurs]==row_image1[Nrbe])
  15.  {
  16.     return '/images/fix01.gif';
  17.  }
  18.  if($row_image1[Nbre]<$row_image[Adaptateurs])
  19.  {
  20.     return '/images/fix08.gif';
  21.  }
  22.  if($row_image1[Nbre]==NULL)
  23.  {
  24.     return '/images/fix05.gif';
  25.  }
  26. }
  27. ?>


 

Code :
  1. echo "<td ><a href='index.php?page=srv_adap_detail&Mac=".$row_licence['Mac']."'><img src='".choix_image($Mac)."' border=0></a></td>";


 
Je suis pas fan des printf en php donc je me sers de echo principalement
 
Donc pour répondre à ton souci je le verrai bien comme ci dessus


Message édité par guitou12 le 06-07-2006 à 11:31:04
Reply

Marsh Posté le 06-07-2006 à 11:34:08    

OK, Merci guitou12 et flo850. je vous tiens au courant.

Reply

Marsh Posté le 06-07-2006 à 11:38:48    

Fatal error,  
Je crois qu'il faut que j'appelle la fonction dans mon fichier d'affichage?
Merci

Reply

Marsh Posté le 06-07-2006 à 13:44:52    

Et elle te dit quoi la "fatal error" ?

Reply

Marsh Posté le 06-07-2006 à 14:55:24    

Elle me dit que ma fonction est introuvable, j'ai trouvé mon erreur, je devrais faire un include pour la déclaré dans mon programme affichage.
Merci à tous.

Reply

Marsh Posté le 06-07-2006 à 15:44:22    

On ne parle pas de programme mais de script php. Soyez rigoureux ;)

Reply

Marsh Posté le 06-07-2006 à 15:44:22   

Reply

Marsh Posté le 06-07-2006 à 15:55:09    

Maintenant plus de fatal error mais l'affichage n'est pas génial, des erreurs que je peux corriger. Merci à tous.
C'est compris, on dit script et non programme php.
Merci encore à tous.

Reply

Marsh Posté le 06-07-2006 à 15:58:37    

Bon courage ;)

Reply

Marsh Posté le 08-07-2006 à 23:57:10    

quand je vois des fonctions qui doivent retourner quelque chose et que ya pas de return a la fin  
 
je me dis que PHP est vraiment trop permissif et qu'il faudrait que l'interpreteur soit plus strict sur le typage, genre declarer le type a retourner comme ca se fait dans les langages classiques.
 
Ca rendrait service a pas mal de personnes qui se mettent a PHP
 
meme PHP 5 qui est pourtant orienté objet n'y oblige pas.
Je pense meme pas qu'il accepte qu'on type la fonction (pas testé)  
 
en tout cas ouep bon courage.
 
ALphaZone : qu'est ce qui selon toi (d'apres ton propos en fait) fait que on peut pas parler d'un programme PHP, mais plutot d'un script PHP ?
le fait que un programme est compilé et qu'un script est interpreté ?

Reply

Marsh Posté le 09-07-2006 à 05:01:39    

Me sort pas ta science, jokari34  :jap: . Tu m'as très bien compris. :p  
 
Et puis d'abord PHP est un programme qui traite des lignes de codes. Ces lignes de code forment un script : Cf. mIRC par exemple.
 
De même que le [u]langage php[u] est un langage interprêté. Mais ne confondons pas un script d'un programme. Pour moi c'est totalement différent. L'un exécuter par ses propres lignes de code. L'autre est exécuté via un programme qui comprend ces lignes de codes. J'me suis peut-être mal exprimé mais je pense que pour résumer tu m'as compris [:atmos]

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed