9
votes

Comment imprimer_r $ _Post tableau?

J'ai la table suivante.

<?php 

  $myarray = array( $_POST);
  foreach ($myarray as $key => $value)
  {
    echo "<p>".$key."</p>";
    echo "<p>".$value."</p>";
    echo "<hr />";
  }

?>


5 commentaires

Y a-t-il une raison pour laquelle vous essayez de collecter plusieurs contextes de texte dans le même nom? De plus, si vous n'êtes pas préoccupé par la jolie à savoir, echo "

". print_r ($ valeur, true). ""; pourrait être votre ami.


@Kyle - à la fin, ce sera une grande table des entrées pour mettre à jour la DB.


Comment remplissez-vous la table? Un fichier *. SQL serait-il un choix décent en supposant que le texte existe déjà quelque part?


@Kyle - Pour moi, ce serait le plus facile - mais pour une personne non technique - dossier où nous abandonnons tout le contenu du formulaire de table DB, remplissez / modifier les entrées et soumettre la mise à jour est la bonne façon de le faire.


Dupliqué possible de $ _Post Nom de la variable d'impression avec valeur


11 Réponses :


1
votes

juste: xxx


5 commentaires

De plus, vous pouvez visualiser la matrice à l'aide de print_r ($ _ post) ou var_dump ($ _ post) .


Vous ne pouvez pas echo $ valeur car il s'agit d'une matrice pour les deux ID et valeur


@Phil Eh bien, vous pouvez définitivement écho à un tableau =)


J'aurais dû dire "Vous ne pouvez pas echo $ valeur et vous attendre à voir quelque chose d'utile" ;-);


Cela retournera

ID

tableau

valeur

tableau


Seulement 2 de 4. Plus je souhaite afficher la valeur du champ - ce qui a été inséré dans l'entrée.



2
votes

Vous ajoutez le tableau _ POST TRAY comme premier élément à $ myARRAY . Si vous souhaitez y réfrir, il suffit de faire: xxx

Cependant, cela n'est probablement pas nécessaire, car vous pouvez simplement l'appeler via $ _ POST dans votre script. < / p>


0 commentaires

0
votes

$ _ POST code> est une matrice dans sa soi-même que vous n'avez pas besoin de créer un tableau. Ce que vous avez fait est de nier le $ _ POST code> Array à l'intérieur d'un nouveau tableau. C'est pourquoi vous imprimez tableau code>. Changez-le à:

foreach ($_POST as $key => $value) {

  echo "<p>".$key."</p>";
  echo "<p>".$value."</p>";
  echo "<hr />";

} 


0 commentaires

0
votes

$ _ POST est déjà un tableau. Essayez ceci: xxx


0 commentaires

5
votes

$ _ POST est déjà un tableau, vous n'avez donc pas besoin de envelopper le tableau () autour de celui-ci.

Essayez cela à la place: P>

<?php 

 for ($i=0;$i<count($_POST['id']);$i++) {

  echo "<p>".$_POST['id'][$i]."</p>";
  echo "<p>".$_POST['value'][$i]."</p>";
  echo "<hr />";

} 

 ?>


6 commentaires

Cela retournera

ID

tableau

valeur

tableau


Seulement 2 de 4. Plus je souhaite afficher la valeur du champ - ce qui a été inséré dans l'entrée.


Droite, désolé, j'ai raté la partie où vos paramètres de nom sont des matrices. Je vais éditerai.


Prudent avec cette méthode. C'est bon pour les entrées de texte, mais si les entrées sont mélangées (par exemple, le texte et les cases à cocher), les comptes ne correspondent pas aux cases à cocher décochées.


@Phil d'où mon note sur la réponse.


@Phil - En fait, je vais utiliser ceci pour des cases à cocher principalement. Quelle solution que?


@Newuser, la réponse de l'Imho Senad est probablement meilleure.



2
votes

Pourquoi enveloppez-vous le tableau _ POST CODE> tableau dans un tableau?

Vous pouvez accéder à vos tableaux "ID" et "Valeur" en utilisant ce qui suit P>

// assuming the appropriate isset() checks for $_POST['id'] and $_POST['value']

$ids = $_POST['id'];
$values = $_POST['value'];

foreach ($ids as $idx => $id) {
    // ...
}

foreach ($values as $idx => $value) {
    // ...
}


0 commentaires

15
votes
<?php 

 foreach ($_POST as $key => $value) {
  echo '<p>'.$key.'</p>';
  foreach($value as $k => $v)
  {
  echo '<p>'.$k.'</p>';
  echo '<p>'.$v.'</p>';
  echo '<hr />';
  }

} 

 ?>
this will work, your first solution is trying to print array, because your value is an array.

0 commentaires

1
votes

Parce que vous avez des tableaux imbriqués, alors je recommande une approche récursive: xxx


0 commentaires

31
votes

Les boucles de foresach fonctionnent juste bien, mais vous pouvez également simplement

echo "<pre>";
print_r($_POST);
echo "</pre>";


0 commentaires

1
votes

est tombé sur ce «implorant» récemment.

peut être utile pour émettre des tableaux de sortie. http://in2.php.net/implode xxx


1 commentaires

Notez que cela émettrait les valeurs, mais pas les clés



0
votes

Comme vous devez voir le résultat à des fins de test. La solution simple et élégante est le code ci-dessous.

echo "<pre>";
print_r($_POST);
echo "</pre>";


0 commentaires