Avatar billede dizzim Nybegynder
20. oktober 2004 - 21:41 Der er 11 kommentarer og
1 løsning

Tilføj og udskriv array.

hej,
Jeg vil som sagt gerne tilføje noget til et array, og derefter udskrive det.
Man skal kunne tilføje et tal til arrayet hvorefter man submit'er det og så skal alle tallene i arrayet blive vist.
Dette skal den gøre på samme side. Altså hvis formen man tilføjer i er på en side der hedder whatever.php skal dens action være på samme side, altså whatever.php.

Af en eller anden grund kan jeg ikk få mit til at virke.

Er der nogen der har en løsning til hvordan dette kan gøres?
Avatar billede dcheng Novice
20. oktober 2004 - 22:54 #1
Tror lige du skal uddybe lidt? Array i forbindelse med MySQL eller en fil?

eller hvordan ser dit array ud?
Avatar billede bojo Nybegynder
20. oktober 2004 - 23:00 #2
<?php
$t = array( 1,2,4,5 );

$t[] = 3;

foreach( $t as $k => $v )
  echo "$k er $v<br />";

echo "<p />";

sort( $t );
foreach( $t as $k => $v )
  echo "$k er $v<br />";
?>
Avatar billede dizzim Nybegynder
20. oktober 2004 - 23:34 #3
@dcheng, ingen af delene. det skal kun være midlertidigt, altså det skal ikke gemmes når brugeren forlader siden.
En gang til:
Man skal kunne tilføje nogle tal til et array der bliver skrevet ud på siden. hvis man tilføjer endnu et tal skal det skrives ud på siden sammen med de andre tal í arrayet.´

@bojo
Alt hvad du har gjort er bare at udskrive et array, men du har ikk skrevet noget om hvordan jeg føre det vidre hvis jeg vil tilføje flere tal via en form.
Avatar billede Slettet bruger
20. oktober 2004 - 23:43 #4
Prøv dette:


<?php

if(isset($_POST['liste'])){
  echo "<ul>";
  foreach($_POST['liste'] as $vaerdi){
    echo "<li>$vaerdi</li>";
  }
  echo "</ul>";
}

?>

<form action='' method='post'>
<p>

<?php
if(isset($_POST['liste'])){
  foreach($_POST['liste'] as $vaerdi){
    echo "<input type='hidden' name='liste[]' value='$vaerdi'>";
  }
}
?>
  <input type='text' name='liste[]'>
  <input type='submit' name='send' value='Tilføj'>
</p>
</form>
Avatar billede bojo Nybegynder
20. oktober 2004 - 23:47 #5
denne $t[] = 3; tilføjer et tal og sort( $t ); bringer "orden" i tabellen, så jeg har vist hvordan du tilføjer til tabellen og udskriver denne
Avatar billede bojo Nybegynder
20. oktober 2004 - 23:53 #6
fortsætter sandbox

<?php

if(isset($_POST['liste'])){
  echo "<ul>";
  foreach($_POST['liste'] as $vaerdi){
  $tabel[] = $vaerdi;
  }
  echo "</ul>";
}

if( isset( $tabel ) ) {
  foreach($tabel as $key => $vaerdi) {
      echo "<li>$key = $vaerdi</li>";
      }
}
?>
<form action='' method='post'>
<p>

<?
if(isset($_POST['liste'])){
  foreach($_POST['liste'] as $vaerdi){
    echo "<input type='hidden' name='liste[]' value='$vaerdi'>";
  }
}
?>
  <input type='text' name='liste[]'>
  <input type='submit' name='send' value='Tilføj'>
</p>
</form>
Avatar billede Slettet bruger
20. oktober 2004 - 23:57 #7
bojo: Det var dog nogle mystiske ændringer, du fik puttet i min kode? Der var da absolut ingen grund til at smide det hele over i et andet array.
Avatar billede bojo Nybegynder
20. oktober 2004 - 23:59 #8
hov, beklager det har du ret i, mn den skrev ikke andet end nyeste element her før, det gør den nu - hmmmm
Avatar billede Slettet bruger
21. oktober 2004 - 00:02 #9
Jeg har lige afprøvet mit forslag, og det virker fint her.
Avatar billede bojo Nybegynder
21. oktober 2004 - 00:04 #10
også her, det var kun 1. gang der ikke kom noget - odd, måske det er senge tid :-)
Avatar billede dizzim Nybegynder
21. oktober 2004 - 14:38 #11
Yay, sandbox's forslag virker helt perfekt.
Bar' lig' et svar og pointene er dine!
Avatar billede Slettet bruger
21. oktober 2004 - 22:34 #12
Javel
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester