Avatar billede viggosmor Nybegynder
14. maj 2008 - 21:19 Der er 20 kommentarer og
1 løsning

Hvad er galt i denne kode?

Jeg kan ikke komme til at validere vores eksamensprojekt, fordi der er noget galt i følgende kode:

<?php
$sql = 'SELECT * FROM books ORDER BY id';
$result = $db->query($sql);
$output[] = '<ul>';
while ($row = $result->fetch()) {       
    $output[] = '<li>'.$row['title'].' <br/>Size: '.$row['author'].' <br/> Price: &euro; '.$row['price'].' <br /> <button onclick="location.href=\'cart.php?action=add&id='.$row['id'].'\';return false"<a class="blue">Læg i kurv</button><br/><br/></li>';
}
$output[] = '</ul>';
echo join('',$output);
?>


Kan I se hvad der er galt?

Jeg er desværre ingen php haj, kan bedre finde ud af html og css... og prøver nu at rydde op i siden...

Siden er at finde her:

http://soederberg-webdesign.dk/sortSiteLone/shoppingcart/index.php
Avatar billede olebole Juniormester
14. maj 2008 - 21:30 #1
<ole>

Kik i browserens View->Source. Så vil du se en kode som denne:

<button onclick="location.href='cart.php?action=add&id=1';return false"<a class="blue">Læg i kurv</button>

- som naturligvis ikke holder en halv meter. Hvad laver det halve anchor?  =)

Derudover kan du ikke skrive '&' i en URL. Der skal stå '&amp;'

/mvh
</bole>
Avatar billede jakobdo Ekspert
14. maj 2008 - 21:30 #2
Når nu du skriver validere, snakker vi så valid html kode ?
Eller er det php koden som ikke virker ?
Avatar billede viggosmor Nybegynder
14. maj 2008 - 21:37 #3
Det er så ikke mig der har lavet php koden, jeg prøver bare at rydde op i koden så stylingen ikke står i xhtml koden men i det eksterne stylesheet...
Avatar billede viggosmor Nybegynder
14. maj 2008 - 21:37 #4
Hov glemte at spørge ole hvad er det for et anchor du snakker om?
Avatar billede jakobdo Ekspert
14. maj 2008 - 21:59 #5
Her i:
location.href=\'cart.php?action=add&id='.$row['id'].'\';return false
skal rettes til:
location.href=\'cart.php?action=add&amp;id='.$row['id'].'\';return false

blandt andet.
Avatar billede jakobdo Ekspert
14. maj 2008 - 22:02 #6
Og herefter:
';return false"
bør der vel komme en />
Avatar billede viggosmor Nybegynder
14. maj 2008 - 22:19 #7
Takker jacobdo, det hjalp dog ikke på problemet...

Bruger dreamweavers code view og der står næsten hele den bid kode jeg pastede ind her, med rødt, det skal den jo ikke, så der må være noget mere forkert i den kode....
Avatar billede jakobdo Ekspert
14. maj 2008 - 22:24 #8
Prøv at start med at ret de ting jeg skriver.
Så kan det jo være vi nærmer os en ok kode.
Avatar billede dkfire Nybegynder
14. maj 2008 - 22:25 #9
Mener heller ikke at button har et lukketag.

Grunden til at din kode står i rødt er vel fordi det er en streng ?
Men prøv dette her:
$output[] = '<li>'.$row['title'].' <br/>Size: '.$row['author'].' <br/> Price: &euro; '.$row['price'].' <br /> <button onclick="location.href=\'cart.php?action=add&amp;id='.$row['id'].'\';return false" class="blue" value="Læg i kurv" name="Button'.$row['id'].'"><br/><br/></li>';
Avatar billede dkfire Nybegynder
14. maj 2008 - 22:26 #10
Jeg tror dog heller ikke at det er helt efter standarten at have en <br> i en <li>
Avatar billede viggosmor Nybegynder
14. maj 2008 - 22:31 #11
uha, nu ser det jo helt forkert ud....

Jacodo havde rettet det du skrev...

Men er i tvivl nu, om det er denne kode alligevel....

Den siger at dokumentet ikke kan valideres pga.

Sorry, I am unable to validate this document because on line 43 it contained one or more bytes that I cannot interpret as utf-8 (in other words, the bytes found are not valid values in the specified Character Encoding). Please check both the content of the file and the character encoding indication.

The error was: utf8 "\x94" does not map to Unicode
Avatar billede dkfire Nybegynder
14. maj 2008 - 22:37 #12
Det er fordi du har lavet noget rod med dit tegnsæt.
Hos mig får jeg nogle søde ? flere steder på din side.
Lige nu prøver du at vise data gemt i ISO formatet på en UTF-8 side. Hvis jeg skifter fra utf-8 til ISO så ser din side rigtig ud.
Avatar billede viggosmor Nybegynder
14. maj 2008 - 22:40 #13
Ja jeg kan regne ud det er der den ligger begavet, jeg aner ikke hvad der er gået galt der...
Avatar billede dkfire Nybegynder
14. maj 2008 - 22:42 #14
Og så lige ang mine rettelse:
$output[] = '<li>'.$row['title'].' <br/>Size: '.$row['author'].' <br/> Price: &euro; '.$row['price'].' <br /> <button onclick="location.href=\'cart.php?action=add&amp;id='.$row['id'].'\';return false" class="blue" name="Button'.$row['id'].'">Læg i kurv</button><br/><br/></li>';
Avatar billede dkfire Nybegynder
14. maj 2008 - 22:44 #15
Der er gået det galt at den side hvor du ligger data ind i databasen vises i iso mens den side som henter og viser data er sat til utf-8
Avatar billede viggosmor Nybegynder
14. maj 2008 - 22:48 #16
Ja, det må være det.... Det er lidt uhensigtsmæssigt at jeg skal sidde og validerer og rette fejl... må hellere snakke med hende der har lavet databasen imorgen...

Må hellere stoppe,med mindre du lige har et forslag til hvad jeg kan gøre? :)
Avatar billede dkfire Nybegynder
14. maj 2008 - 22:53 #17
Du kan gøre noget ala:
Og så lige ang mine rettelse:
$output[] = '<li>'.$row['title'].' <br/>Size: '.utf8_encode($row['author']).' <br/> Price: &euro; '.$row['price'].' <br /> <button onclick="location.href=\'cart.php?action=add&amp;id='.$row['id'].'\';return false" class="blue" name="Button'.$row['id'].'">Læg i kurv</button><br/><br/></li>';
Avatar billede viggosmor Nybegynder
14. maj 2008 - 22:57 #18
Perfekt!!!

Det er bare super dkfire....

Hvad skulle man gøre uden eksperten... he he....
Avatar billede viggosmor Nybegynder
14. maj 2008 - 23:01 #19
Læg et svar dkfire :)
Avatar billede dkfire Nybegynder
14. maj 2008 - 23:16 #20
Og et svar fra mig :-)
Men det kunne måske også være jakobdo vil have lidt point.
Avatar billede jakobdo Ekspert
15. maj 2008 - 06:42 #21
Det er fint dkfire, jeg springer over.
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