Gå til innhold

[Løst] Variabel for å angi tabellposisjon?


Anbefalte innlegg

Hepps!

 

Har akkurat gått i gang med å lære meg Php som smått, og følgelig er derfor antageligvis det jeg spør om nokså banalt :)

 

Jeg forsøker å lage en side som manipulerer input, nærmere bestemt et navn og en url-adresse for å generere HTML-lenker. Ideen er at brukeren skal kunne lage flere lenker, men dette har vist seg noe vanskelig: Jeg lagrer input i en tabell og sender deretter output ut via tabellen med dynamisk teller. Ideen er at man første gang skal få ut lenke[1], deretter lenke[1] og lenke[2] og så videre. Problemet er at "telleren" nullstiller seg for hver gang jeg kjører skriptet. Det finnes helt sikkert en særdeles enkel løsning, men jeg har hittil ikke funnet den.

 

Nedenfor er skriptet slik det ser ut nå :)

 

<html>
<?php
$Name = $_POST["Name"];
$URL = $_POST["URL"];
if (!isset($_POST['submit']))  // if page is not submitted to itself echo the form
?>
   <head>
       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
       <title></title>
   </head>
   <body>
   <form method="post" action="<?php echo $PHP_SELF;?>">
       ArticleName:<input type="text" size="30" maxlength="40" name="Name"><br/>
       URL:<input type="text" size="30" maxlength="50" name="URL"><br/>
       <input type="submit" value="submit" name="submit">
   </form>
       <form method="output">
       <?php 
       $counter = 0; //Jeg innser at dette nullstiller telleren for hver gang. Men uten 0-tallet blir variablen uten verdi, og ergo ubrukelig.
       $storeme[$counter] = "Les også: "."<a href="".$URL."">".$Name."</a>";

       ?>
       <label for="n1">Complete:</label><input type="text" size="100" name="numbers1" value="<?php echo $storeme[0].$storeme[1] ?>" </br>
       <?php $counter = $counter + 1 ?>
   </form>
   </body>
</html>

Endret av The Stig
Lenke til kommentar
Videoannonse
Annonse

Takker nok en gang for svar, fungerte fjell :)

 

Sliter nå dog med at jeg ikke klarer å få ut innholdet av hele arrayet, kun den første verdien. Lurer litt på om det i det hele tatt fungerer å bruke variabler for å angi posisjon i array? Eksempelvis:

$entabbel[0]="test123";
$teller = 0;
echo $entabell[$teller];

 

Legger ved koden også :)

 

<?php
session_start();
if(isset($_SESSION['counter']))
   $_SESSION['counter'] = $_SESSION['counter']+ 1;
else
   $_SESSION['counter'] = 0;

// echo "views = ". $_SESSION['views'];
$Name = $_POST["Name"];
$URL = $_POST["URL"];
$counter = $_SESSION['counter'];
if (!isset($_POST['submit']))  // if page is not submitted to itself echo the form
?>
<html>
   <head>
       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
       <title></title>
   </head>
   <body>
   <form method="post" action="<?php echo $PHP_SELF;?>">
       ArticleName:<input type="text" size="30" maxlength="40" name="Name"><br/>
       URL:<input type="text" size="30" maxlength="50" name="URL"><br/>
       <input type="submit" value="submit" name="submit">
   </form>
       <form method="output">
       <?php 
       $storeme[$counter] = "Les også: "."<a href="".$URL."">".$Name."</a>";
       ?>
       <label for="n1">Complete:</label><input type="text" size="100" name="numbers1" value="<?php echo $storeme[0] . $storeme[1] . $storeme[2] ?>" </br>
       <?php
       echo $counter;
       if ($_SESSION['counter'] == 2) {
           session_destroy();
       }
       echo $storeme[0];
       echo $storeme[1];
       echo $storeme[2];
       ?>

   </form>
   </body>
</html>

 

Edit: Var vist ingenting galt med måten jeg anga tabellposisjon på, problemet ligger vist i måten jeg angir output på :)

Endret av The Stig
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...