2017-02-11 2 views
0

J'ai deux colonnes dans ma base de données qui contiennent des valeurs entrées à partir de plusieurs zones de sélection. J'ai utiliséComment faire écho plusieurs éléments d'une seule colonne sur une nouvelle ligne dans PHP

$skills = join($_POST['skillSelect'],','); 
$languages = join($_POST['languageSelect'],','); 

pour les formater dans la base de données. Maintenant, je veux les afficher à l'utilisateur sur une autre page. Ils affichent, mais je veux chacun sur des lignes différentes. Par exemple, supposons que l'utilisateur ait saisi «Java, PHP, JavaScript» comme valeurs de langue. Je veux qu'ils afficher comme:

<p>Java</p> 
<p>PHP</p> 
<p>JavaScript</p> 

Cependant, ils sont tout simplement afficher comme

Java, PHP, JavaScript 

Voici ma tentative en utilisant une boucle foreach et exploser:

<?php 
    $languages_explode = explode(PHP_EOL, $_SESSION['languages']); 
    foreach($languages_explode as $language) { 
     echo $language; 
    } 
?> 

J'ai aussi essayé :

echo "<p>".$language."</p>"; 

Je pensais Le délimiteur PHP_EOL le formaterait correctement, mais je me suis trompé. Comment puis-je afficher chaque élément sur une nouvelle ligne, de préférence dans une balise de paragraphe? Merci!

+0

ce que '$ _SESSION [ 'langues']' contient? –

+0

Pour mon utilisateur de test actuel, il contient les valeurs Java, PHP et JavaScript extraites de la colonne "Langues" de la base de données. – IRGeekSauce

+0

changez cette ligne '$ languages_explode = exploser (PHP_EOL, $ _SESSION ['languages']);' à '$ languages_explode = exploser (", ", $ _SESSION ['languages']);' et ensuite 'echo"

". $ language."

";' –

Répondre

0

changez cette ligne

$languages_explode = explode(PHP_EOL, $_SESSION['languages']); 

à

$languages_explode = explode(",", $_SESSION['languages']); 

puis faire

echo "<p>".$language."</p>"; 
0

essayer comme ceci votre code de db est

Java, PHP, JavaScript 

exploser ce pour convertir en tableau

$mystring = "Java, PHP, JavaScript"; 

$myArray = explode(',',$mystring); 

//print_r($myArray); 

foreach($myArray as $row) 
{ 
echo "<p>".$row."</p><br>"; 
} 
+0

Rien n'a changé. – IRGeekSauce

+0

vérifier vous css peut-être votre css écraser quelque chose .. il travaille dans le violon – Shibon