Affichage d'une image avec ID

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Affichage d'une image avec ID

par alexdarcy » 06 avr. 2006, 18:31

C'est bon chai trouvailler ....
merci à tous ... kel boulot ! :wink:

par alexdarcy » 06 avr. 2006, 17:17

oui c'est bon je n'avais po compris qu'il fallait le faire partout :oops: :wink:
 // on affiche les informations de l'enregistrement en cours 
    
 ?> <img src="./upload/logo_agence_<?php echo $data['ID']; ?>" width="111" height="46" border="0"> <br><br>
     <b><a href="agences.php?ID=<?php echo $data['ID']; ?>"><b><?php echo $data['nom']; ?></a></b>
<br><?php echo $data['adresse']; ?>
<br><br></b>Mail : <?php echo $data['mail']; ?><br></b>Tel : <?php echo $data['telephone']; ?><br>Fax : 
<?php echo $data['fax']; ?><br><br></b><i>AGENTS : <b><font color="#FF7E00"><br><?php echo 
$data['agent1']; ?></b></font><br><?php echo $data['mail1']; ?><b><font color="#FF7E00"><br><?php echo 
$data['agent2']; ?></b></font><br><?php echo $data['mail2']; ?><b><font color="#FF7E00"><br><?php echo 
$data['agent3']; ?></b></font><br><?php echo $data['mail3']; ?> 
<? 
}  
?><? 
// on ferme la connexion à mysql 
mysql_close(); 
?>
mais maintenant je m'apperçois d'une chose, lorsqu'il n'y a aucune image de téléchargée, l'emplacement vide est visible. Comment faire pour qu'il disparaisse ?
:cry:

par charabia » 06 avr. 2006, 16:19

Avant de commencer à faire du php commence par corriger ton code HTML. Tu as tout plein d'erreurs...

Ensuite pour le PHP, avant de poser une question, regardes le tuto pour débutant : http://www.phpdebutant.org

Là tu essaies d'attaquer du PHP sans en connaître les bases...tu vas continuer à galérer comme tu l'es maintenant.

Regardes la différence avec ton code (je n'ai pas corrigé ton HTML) :
<?php 
// on se connecte à MySQL
$db = mysql_connect('localhost', 'agence', 'xxxx');

// on sélectionne la base
mysql_select_db('agences',$db);

// on crée la requête SQL
$id = isset($_GET['ID']) ? $_GET['ID'] : 1;
$sql = "SELECT ID,nom,adresse,telephone,fax,mail,agent1,mail1,agent2,mail2,agent3,mail3 FROM agences_tbl WHERE ID=".$id;

// on envoie la requête 
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

// on fait une boucle qui va faire un tour pour chaque enregistrement
while($data = mysql_fetch_assoc($req))
{ 
// on affiche les informations de l'enregistrement en cours
?>    
<img src="./upload/logo_agence_<?php echo $data['ID']; ?>" width="111" height="46" border="0"><br><br>
<b><a href="agences.php?ID=<?php echo $data['ID']; ?>"><b><?php echo $data['nom']; ?></b></a><br><b><?php echo $data['adresse']; ?></b><br><br>Mail : <b><?php echo $data['mail']; ?></b><br>Tel : <b><?php echo $data['telephone']; ?></b><br>Fax : <b><?php echo $data['fax']; ?></b><br><br>AGENTS : <b><font color="#FF7E00"><br><?php echo $data['agent1']; ?></font></b><br><?php echo $data['mail1']; ?><b><font color="#FF7E00"><br><?php echo $data['agent2']; ?></b></font><br><?php echo $data['mail2']; ?><b><font color="#FF7E00"><br><?php echo $data['agent3']; ?></b></font><br><?php echo $data['mail3']; ?><br>
<?
}

// on ferme la connexion à 
mysql 
mysql_close(); 
?>

par Ryle » 06 avr. 2006, 16:17

Ben le problème est que comme tu es sorti du while $data n'est plus défini (c'est d'ailleurs pour ça que tu sors du while), donc $data['nom'] et $data['ID'] le sont encore moins

Essayes comme ceci...
<?...
while($data = mysql_fetch_assoc($req)) 
{ 
    // on affiche les informations de l'enregistrement en cours 
    ?>    
    <img src="./upload/logo_agence_<?php echo $data['ID']; ?>" width="111" height="46" border="0"> 
    <br><br> 
    <b><a href="agences.php?ID=<?php echo $data['ID']; ?>"><b><?php echo $data['nom']; ?> 
    ...
  <? 
} 
?>

par alexdarcy » 06 avr. 2006, 16:09

ici ou est le probleme ? :
?>   
    <img src="./upload/logo_agence_<?php echo $data['ID']; ?>" width="111" height="46" border="0"> 
    <br><br> 
  <?
}
  ?>
<b><a href="agences.php?ID=<?php echo $data['ID']; ?>"><b><?php echo $data['nom']; ?>
:?:

par Ryle » 06 avr. 2006, 16:04

C'est parce que tu es sorti du while... $data ne contient donc plus rien :)

par alexdarcy » 06 avr. 2006, 16:00

oui ça je sais aussi mais même cette phrase qui est en php n'affiche pas les infos :
<a href="agences.php?ID=<?php echo $data['ID']; ?>"><b><?php echo $data['nom']; ?>
:cry:

par Invité » 06 avr. 2006, 15:30

Révérifies bien...c'est la base du PHP. A la fin de ton code, rien ne se trouve dans les balise <?php et ?> donc normal que ça s'affiche telle quelle...

par Ryle » 06 avr. 2006, 14:39

Bon et bien comme tu peux le voir grace à la coloration syntaxique gracieusement offerte sur ce forum, tout ce qui est en noir n'est pas considéré comme du php :)
 
<? 
 // Ici c'est du php
?>
Là c'en est pas :)
<?
 // ici pas de html
?>
Là, pas de php

C'est facile, et pis c'est tout en couleur :
htmlhtmlhtmlhtml<? phpphpphp ?>htmlhtmlhtml<? phpphp ?>htmlhtmlhtml :)
Par conséquent, dans ton code, c'est quoi ça ;) :
?></a></b><br>'.$data['adresse'].'<br>

par alexdarcy » 06 avr. 2006, 14:15

voilà tt le code :
<?php 
// on se connecte à 
MySQL 
$db = mysql_connect('localhost', 'agence', 'xxxx'); 

// on sélectionne la base 
mysql_select_db('agences',$db); 

// on crée la requête SQL 
$id = isset($_GET['ID']) ? $_GET['ID'] : 1; 
$sql = "SELECT ID,nom,adresse,telephone,fax,mail,agent1,mail1,agent2,mail2,agent3,mail3 
    FROM agences_tbl 
    WHERE ID=". $ID; 

// on envoie la requête 
$req = mysql_query($sql) or die('Erreur SQL 
!<br>'.$sql.'<br>'.mysql_error()); 

// on fait une boucle qui va faire un tour pour chaque enregistrement 
while($data = mysql_fetch_assoc($req)) 
{ 
    // on affiche les informations de l'enregistrement en cours 
    ?>   
    <img src="./upload/logo_agence_<?php echo $data['ID']; ?>" width="111" height="46" border="0"> 
    <br><br> 
  <?
}
 ?> <b><a href="agences.php?ID=<?php echo $data['ID']; ?>"><b><?php echo $data['nom']; ?>
</a></b><br>'.$data['adresse'].'<br><br></b>Mail : '.$data['mail'].'<br></b>Tel : '.$data['telephone'].'<br>Fax : 
'.$data['fax'].'<br><br></b><i>AGENTS : <b><font 
color="#FF7E00"><br>'.$data['agent1'].'</b></font><br>'.$data['mail1'].'<b><font 
color="#FF7E00"><br>'.$data['agent2'].'</b></font><br>'.$data['mail2'].'<b><font color="#FF7E00"><br>'.$data['agent3'].'</b></font><br>'.$data['mail3'].'<br>'; 
} 

// on ferme la connexion à 
mysql 
mysql_close(); 
?>
:cry:

par charabia » 06 avr. 2006, 14:13

C'est que tu ne l'as pas mis dans les balises PHP. Montres nous tout le code, des bouts comme ça ne nous aide pas trop ;)

par alexdarcy » 06 avr. 2006, 14:11

fonctionne toujours po voilà ce que j'ai à l'écran (l'image s'affiche bien) :

'.$data['adresse'].'

Mail : '.$data['mail'].'
Tel : '.$data['telephone'].'
Fax : '.$data['fax'].'

AGENTS :
'.$data['agent1'].'
'.$data['mail1'].'
'.$data['agent2'].'
'.$data['mail2'].'
'.$data['agent3'].'
'.$data['mail3'].'
'; } // on ferme la connexion à mysql mysql_close(); ?>

:oops: :oops:

par charabia » 06 avr. 2006, 13:54

Regardes bien, tu mets du code PHP hors balise PHP...
<img src="./upload/logo_agence_<?php echo $data['ID']; ?>" width="111" height="46" border="0"><br><br> 
<?php
}
?>
<a href="agences.php?ID=<?php echo $data['ID']; ?>"><b><?php echo $data['nom']; ?></b></a>

par alexdarcy » 06 avr. 2006, 13:30

c'est bien ce que je pensais, maintenant l'image s'affiche bien mais plus les autres infos .. il y a un probleme avec echo'
?>   
    <img src="./upload/logo_agence_<?php echo $data['ID']; ?>" width="111" height="46" border="0"><br><br> 
  <? 
}
 ?> <b>echo ' <a 
href="agences.php?ID='.$data['ID'].'"><b>'.$data['nom'].'</a>
Mumm :oops:

par alexdarcy » 06 avr. 2006, 13:11

cette page te donnera des infos sur la concaténation : http://phpdebutant.org/article55.php

j'insiste, lit cette page :P
si un tableau php dans le style $data[] n'est pas placé entre <?php et ?>, il ne sera jamais interprété !
oui ça je le sais :cry:
<?php 
// on se connecte à 
MySQL 
$db = mysql_connect('localhost', 'agence', 'xxxx'); 

// on sélectionne la base 
mysql_select_db('agences',$db); 

// on crée la requête SQL 
$id = isset($_GET['ID']) ? $_GET['ID'] : 1; 
$sql = "SELECT ID,nom,adresse,telephone,fax,mail,agent1,mail1,agent2,mail2,agent3,mail3 
    FROM agences_tbl 
    WHERE ID=". $ID; 

// on envoie la requête 
$req = mysql_query($sql) or die('Erreur SQL 
!<br>'.$sql.'<br>'.mysql_error()); 
// on fait une boucle qui va faire un tour pour chaque enregistrement 
while($data = mysql_fetch_assoc($req)) 
{ 
    // on affiche les informations de l'enregistrement en cours 
    echo '<img src="./upload/logo_agence_' . $data['ID'] . '" width="111" height="46" border="0"><br><br>';
  <b>echo ' <a 
href="agences.php?ID='.$data['ID'].'"><b>'.$data['nom'].'</a></b><br>'.$data['adresse'].'<br><br></b>Mail : 

'.$data['mail'].'<br></b>Tel : '.$data['telephone'].'<br>Fax : '.$data['fax'].'<br><br></b><i>AGENTS : <b><font 
color="#FF7E00"><br>'.$data['agent1'].'</b></font><br>'.$data['mail1'].'<b><font color="#FF7E00"><br>'.$data['agent2'].'</b></font><br>'.$data['mail2'].'<b><font color="#FF7E00"><br>'.$data['agent3'].'</b></font><br>'.$data['mail3'].'<br>'; 
} 

// on ferme la connexion à mysql 
mysql_close(); 
?>
mais j'ai plutôt un probleme avec echo '