interprétation du code PHP : problème conversion Date

Eléphanteau du PHP | 11 Messages

09 juil. 2012, 15:46

Bonjour,
voilà mon nouveau souci !!!
Je n'arrive pas à faire interpréter du code PHP dans une variable afin de convertir une date ou un prix.
ma variable $date_fr ne me retourne rien ! en dehors des // !!

<?php $date_us=$row['parution'];
		$array_date_us=explode("-",$date_us); 
		$date_fr=$array_date_us[2]."/".$array_date_us[1]."/".$array_date_us[0];
               echo $date_fr ; ?>
$content = '';
$date_us=$row['parution'];
$array_date_us=explode("-",$date_us);
$date_fr=$array_date_us[2]."/".$array_date_us[1]."/".$array_date_us[0];
$prix =  $row['prix'];
    foreach ($res as $row)
    {
		
        $content .= '
        <article id="content2">
        	        <img src="img/cover_img/'.$row['lien_img'].'.png" alt="" id="cover">   
        	        <h2 class="titre"><a href="livre_numerique.php?id='.$row['id'].'">'.$row['titre'].'</a></h2>
        	        <h3 class="titre">'.$row['sous_titre'].'</h3>
        	        <p>Paru le : '.$date_fr.'</p>
        	        <p>Description : '.$row['resume'].'
			<p class="prix">À partir de : '.$prix = str_replace('.', ',', $row['prix']).' €</p>
        	    </article>';
	}		

ViPHP
xTG
ViPHP | 7331 Messages

09 juil. 2012, 19:51

La variable $row est déclarée dans la boucle, pas en dehors.
Donc tu travailles sur du vide. ;)
Déplaces ton code à l'intérieur de la boucle.

Eléphanteau du PHP | 11 Messages

09 juil. 2012, 20:40

Comme je retape entièrement mon code, je me suis plongé dans mon bouquin PHP. Du coup, je suis passé par une fonction en utilisant setlocale et strftime. Et ça l'air de fonctionner.
setlocale (LC_TIME, 'fr_FR');
function dateFr($date){
return strftime('%d/%m/%Y',strtotime($date));
}
    foreach ($res as $row)
    {
		
        $content .= '
        <article id="content2">
        	        <img src="img/cover_img/'.$row['lien_img'].'.png" alt="" id="cover">   
        	        <h2 class="titre"><a href="livre_numerique.php?id='.$row['id'].'">'.$row['titre'].'</a></h2>
        	        <h3 class="titre">'.$row['sous_titre'].'</h3>
        	        <p>Paru le : '.dateFr($row['parution']).'</p>
        	        <p>Description : '.$row['resume'].'
					<p class="prix">À partir de : '.$prix = str_replace('.', ',', $row['prix']).' €</p>
        	    </article>';
	}	
Merci pour ton aide. Effectivement, une fois dans la boucle c'est mieux!
$content = '';
$prix =  $row['prix'];
    foreach ($res as $row)
    {
		$date_us=$row['parution'];
		$array_date_us=explode("-",$date_us);
		$date_fr=$array_date_us[2]."/".$array_date_us[1]."/".$array_date_us[0];
        $content .= '
        <article id="content2">
        	        <img src="img/cover_img/'.$row['lien_img'].'.png" alt="" id="cover">   
        	        <h2 class="titre"><a href="livre_numerique.php?id='.$row['id'].'">'.$row['titre'].'</a></h2>
        	        <h3 class="titre">'.$row['sous_titre'].'</h3>
        	        <p>Paru le : '.$date_fr.'</p>
        	        <p>Description : '.$row['resume'].'
					<p class="prix">À partir de : '.$prix = str_replace('.', ',', $row['prix']).' €</p>
        	    </article>';
	}