Gå til innhold

[Løst] Kan noen finne feilen? Sett meg blind.


Anbefalte innlegg

Først off: Jeg er helt ny på php, har hatt det i 3 uker og forelesern er.... Vel, ikke særlig flink.

 

Så til greia:

Vi har en oppgave hvor vi skal gjøre om størrelser fra EU til US. Jeg har kodet ferdig (tror jeg) men dritten vil ikke fungere, og deler av koden kommer på siden. Hvaaa har jeg gjort galt, hvor er feilen? Sitter her helt fortumlet og forvirret, for klarer ikke finne en feil.

 

html'en ser slik ut:

<!DOCTYPE html>
</html>
<head>
<meta charset="UTF-8" />
<title>SizeChart</title>
</head>
<body>
<h1>Clothing sizes</h1>
<form action="clothingchart.php" method="$_GET" >
 <ul>Men's Underwear
  <li>From EU to US: <input type="text" name="eu" > <input type="submit" value="send" ></li>
 </ul>
</form>

og php'en ser slik ut:

<? php
if(isset($_GET['eu']))
{
 $eu = $_GET['eu'];
}
else
{
 $eu = '';
}
$us = array
 (array(1, 'S'),
 array(2, 'M'),
 array(3,'L'),
 array(4,'XL'),
 array(5, 'XXL'));

for($i = 0; $i < 5; $i++)
 {
  if($eu == $us[$i][0])
  {
  echo "<p>EU: " . $us[$i][0] . "</p>";
  echo "<p>UK: " . $us[$i][1] . "</p>";
  }
 }
echo "<br />";

?>

 

Også er selvsagt html'en avsluttet nederst.

 

Så, hvor er den gigantiske feilen jeg garantert har gjort?

 

Dere er forresten fri til å forklare meg og fortelle om andre løsninger som kanskje er greiere å bruke også.

 

Størrelsene er dette forresten:

 

EU 1 2 3 4 5

US s m l xl xxl

Lenke til kommentar
Videoannonse
Annonse

Kan det være så enkelt som mellomrommet mellom ? og php på toppen?

<? php

, skulle heller vært:

<?php

 

Edit: Du må forresten komme med litt mer detaljer, "dritten vil ikke fungere" og "deler av koden kommer på siden" er ikke så veldig beskrivende...

Endret av DCG
Lenke til kommentar

Åja, herregud. Skal først sjekke om det fungerer nå.

 

"Dritten vil ikke fungere" betyr at ingenting skrives ut på siden etter man har submitta størrelsen sin.

 

Takk gud, nå fungerer alt som det skal. :) Og kodingen på siden er borte også. Takk!

 

Det som ble printa ut på siden av kodingen var arrayen og deler av echoen. Men da var det bare ?php som var problemet :) tihi

Lenke til kommentar

Åja, herregud. Skal først sjekke om det fungerer nå.

 

"Dritten vil ikke fungere" betyr at ingenting skrives ut på siden etter man har submitta størrelsen sin.

 

Takk gud, nå fungerer alt som det skal. :) Og kodingen på siden er borte også. Takk!

 

Det som ble printa ut på siden av kodingen var arrayen og deler av echoen. Men da var det bare ?php som var problemet :) tihi

 

Er ofte småting som er problemet, så alltid se for slike feil om det er problemer. Ofte er manglende komma, semikolon og slikt kilden til mange hodepiner. ;)

Endret av PureDarkness
Lenke til kommentar

Når du skal loope igjennom en array så er foreach bedre egnet enn for. En foreach vil gå igjennom hver forekomst i array'en.

Det er ikke nødvendig med en multi dimensjonal array, du kan klare deg med å lagre US som nøkkel, og EU som verdi, og da kan du droppe løkken (for/foreach) helt.

 

$us = array(1=>'S', 2=>'M', 3=>'L', 4=>'XL', 5=>'XXL');

// uten løkke
echo "<p>EU: " . $eu . "</p>";
echo "<p>UK: " . $us[$eu] . "</p>";

// med løkke
foreach ($us as $key=>$value) {
 if ($eu == $key) {
   echo "<p>EU: " . $key . "</p>";
   echo "<p>UK: " . $value . "</p>";
 }
}

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...