code php à l'intérieur d'un echo?

Invité
Invité n'ayant pas de compte PHPfrance

03 sept. 2005, 15:55

Bonjour à tous. Voila, j'ai un problème/question assez stupide mais bon, après tout je suis un newbie :)

Donc je cherche à insérer un bout de code php à l'intérieur d'un echo comme l'indique le titre. Le code est le suivant :
<h3>Patchs</h3>
<div class="news">
	<table width="450" align="center" cellpadding="1" border="0">
		<tr>
			<th>Fichier</th>
			<th>Poids</th>
		</tr>
	<?
require ('config.php');
?>
<?
$db = mysql_connect("$host", "$login","$pass");
mysql_select_db('$base',$db);

$query = 'SELECT * FROM dl_patchs ORDER BY id ASC';
$result = mysql_query($query);
while ($row = mysql_fetch_array($result))
{

?>
		<tr>
			<td><? echo ($row[fichiers]); ?></td>
			<td><? echo ($row[poids]); ?></td>
		</tr>	
<?
}
mysql_close($db);
?>
	</table>
</div>
Je cherche donc à savoir si :
- c'est faisable (je n'y suis pas arrivé, y compris en utilisant des \)?
- c'est souhaitable?

Je tiens un préciser que le echo est une partie d'un switch ($var)

Merci :-)

HD
Mammouth du PHP | 1181 Messages

03 sept. 2005, 16:00

met le code dans une page.php et met include au lieu de echo
"Si Dieu descendait sur la Terre, tous les peuples se mettraient a genoux, excepte les Français qui diraient : " Ah ! Vous êtes la ! C'est pas trop tôt ! On va pouvoir discuter un peu !" [Michel Balfour]

Invité
Invité n'ayant pas de compte PHPfrance

03 sept. 2005, 16:27

En vérité, le but de la manoeuvre est de passer de trois pages à une regroupant les 3 (et permettant peut être d'alléger une partie puisque certains éléments du code sont récurrents).

C'est une section de dl qui se décompose en : maps, patchs, fichiers divers.

Ainsi je souhaite utiliser siwtch :
<?
switch($cat)
{
case "maps":
echo "bout de code pour afficher la bdd";
break;
case "patchs":
echo "celui pour patchs";
break;
case "divers":
echo "celui de divers";
break;
default: echo "blabla";
}
?>

HD
Mammouth du PHP | 1181 Messages

03 sept. 2005, 16:30

j'insiste en disant que si le code est long cela ne va pas etre du tout evident à cause des " des ' ou ; etc
a ta place je ferai
<? 
switch($cat) 
{ 
case "maps": 
include ("code1.php");
break; 
case "patchs": 
include ("code2.php"); 
break; 
case "divers": 
include ("code3.php");
break; 
default: include ("code4.php");
} 
?> 
mais c'est a toi de voir...
"Si Dieu descendait sur la Terre, tous les peuples se mettraient a genoux, excepte les Français qui diraient : " Ah ! Vous êtes la ! C'est pas trop tôt ! On va pouvoir discuter un peu !" [Michel Balfour]

Ed
Petit nouveau ! | 2 Messages

03 sept. 2005, 16:36

Oui c'est la solution que j'ai à l'heure actuelle mais avoir 3 fichiers pour des actions similaires m'embête un peu, voire beaucoup.

Enfin merci beaucoup néanmoins ;)

HD
Mammouth du PHP | 1181 Messages

03 sept. 2005, 16:46

pour ca il y a une autre solution : creer une fonction qui contient le code qui est commun aux trois trucs et l'appler quand tu en a besoin (pas de repetition de code dans ce cas)
"Si Dieu descendait sur la Terre, tous les peuples se mettraient a genoux, excepte les Français qui diraient : " Ah ! Vous êtes la ! C'est pas trop tôt ! On va pouvoir discuter un peu !" [Michel Balfour]

Ed
Petit nouveau ! | 2 Messages

03 sept. 2005, 16:55

Oui en effet puisque leurs seules différences pour le moment sont la table, et pour l'une des trois catégorie, une variable suplémentaire.

Je vais essayer ça, merci :)

HD
Mammouth du PHP | 1181 Messages

03 sept. 2005, 16:59

c'est rien
et si ca marche n'oublie pas "résolu"
"Si Dieu descendait sur la Terre, tous les peuples se mettraient a genoux, excepte les Français qui diraient : " Ah ! Vous êtes la ! C'est pas trop tôt ! On va pouvoir discuter un peu !" [Michel Balfour]