robhaugen Skrevet 8. oktober 2007 Del Skrevet 8. oktober 2007 Prøver å laste data inn i et select felt. det går sånn fifty/femti fordi jeg får hentet inn alt, men problemet oppstår når jeg sender den dataen videre til en "form". Da fjerner den koden jeg fant eventuelle mellomrom og det er jo ikke like kjekt. Det jeg prøver å gjøre er å liste opp kategori fra databasen for så å sende valgt kategori tilbake til databasen med endringer på annen tekst i andre felt.. hvis kategori er februar 2007 sender koden februar tilbake til db'en.. Her er koden.. <?php //Henter ut kategorier fra databasen for å load option boksen function get_all_lists() { $list = array(); $query = "select kategori,id from images group by kategori"; $result = mysql_query($query); if(!$result) echo "<p>Unable to get list from database - $query."; $num = mysql_numrows($result); for($i = 0; $i<$num; $i++) { array_push($list, array(mysql_result($result, $i, 0), mysql_result($result, $i, 1))); } return $list; } // display html form for uploading a new message global $table_width; $list = get_all_lists(); $lists = sizeof($list); ?> <select name = list> <? for($i = 0; $i<$lists; $i++) { echo "<option value = ".$list[$i][1]; if ($listid== $list[$i][1]) echo " selected"; echo ">".$list[$i][0]."</option>\n"; } ?> </select> noen som skjønner dette? Lenke til kommentar
JohndoeMAKT Skrevet 8. oktober 2007 Del Skrevet 8. oktober 2007 Desverre skjønner jeg det ikke nei. det går sånn fifty/femti fordi jeg får hentet inn alt, men problemet oppstår når jeg sender den dataen videre til en "form".Da fjerner den koden jeg fant eventuelle mellomrom og det er jo ikke like kjekt. Mangler det et par ord her? Kan du prøve å forklare dette på nytt? Hva er egentlig problemet, altså hva er det koden din mangler eller hva er det den gjør galt? Jeg har bare sett forsiktig over koden, men bortsettt fra et par ting jeg hadde gjort anderledes ser det ut som om den skal gjøre akkurat det du ønsker. Og ellers vil jeg ønske deg velkommen tilbake til forumet. Lenke til kommentar
robhaugen Skrevet 8. oktober 2007 Forfatter Del Skrevet 8. oktober 2007 dessverre skjønner jeg det ikke nei. det går sånn fifty/femti fordi jeg får hentet inn alt, men problemet oppstår når jeg sender den dataen videre til en "form".Da fjerner den koden jeg fant eventuelle mellomrom og det er jo ikke like kjekt. Mangler det et par ord her? Kan du prøve å forklare dette på nytt? Hva er egentlig problemet, altså hva er det koden din mangler eller hva er det den gjør galt? Jeg har bare sett forsiktig over koden, men bortsettt fra et par ting jeg hadde gjort anderledes ser det ut som om den skal gjøre akkurat det du ønsker. Og ellers vil jeg ønske deg velkommen tilbake til forumet. 9660455[/snapback] hmm.. skal prøve å forklare på nytt jeg får koden til å virke (nesten) som jeg vil. den lister ut alt som er i "kategori" inni select og den lister det opp helt perfekt.. dvs hvis jeg har 2 kategorier i db'en, en som heter "februar 2007" og en som heter "mars 2007" vises hele teksten. så det funker jo så langt :-) men når jeg da velger en av de, og sender data videre til en form tar den koden å gjør om "februar 2007" til "februar". var det bedre forklaring? jeg håper det.. :!: takk for tilbakevelkomsten Lenke til kommentar
JohndoeMAKT Skrevet 8. oktober 2007 Del Skrevet 8. oktober 2007 Først bare én liten ting; du vet at det er verdien i den valgte menyens "value" som blir sent når du submitter formet? Så det er id du mottar på neste side, og ikke navnet du ser synlig: $query = "select kategori,id from images group by kategori"; Ellers ser jeg ingen feil i koden og feilen ligger da trolig i den delen du ikke har tatt med her, nemlig koden som tar mot submitten og skal vise dette. Lenke til kommentar
robhaugen Skrevet 8. oktober 2007 Forfatter Del Skrevet 8. oktober 2007 (endret) har prøvd å lage en enkel side med ei form som submitter til en db. fungerer på akkurat samme måte som tidligere.. Den laster opp men kutter mellomrom i kategori.. her er siden.. Test på OPTION her Her er koden til hele form siden. <?php // error_reporting(E_ERROR); include 'config/dbconfig.php'; include 'config/opendb.php'; ?> <html> <body> <?php function get_all_lists() { $list = array(); $query = "select kategori from images group by kategori"; $result = mysql_query($query); if(!$result) echo "<p>Unable to get list from database - $query."; $num = mysql_numrows($result); for($i = 0; $i<$num; $i++) { array_push($list, array(mysql_result($result, $i, 0))); } return $list; } // display html form for uploading a new message global $table_width; $list = get_all_lists(); $lists = sizeof($list); $text_main = $_POST["text_main"]; $text_alt = $_POST["text_alt"]; $kategori = $_POST["kategori"]; $author = $_POST["author"]; $navn =$_POST["navn"]; $dato = date("d.m.Y"); //TIMESTAMP //If no errors registred, print the success message and show the thumbnail image created //If contact is being sent: if($_POST['submit_id'] == 1) { mysql_query("INSERT INTO images (filename, text_main,text_alt,dato,kategori,author) VALUES('$kategori', '$text_main', '$text_alt', '$dato', '$kategori', '$author') ") or die(mysql_error()); echo "<h2>Bildet er lagt inn!</h2>"; echo '<br /><br />Bildet ble lagt til i kategorien '; echo $kategori; echo '<br /><br />Med teksten: <i>'.$text_main.'</i>'; echo '<br /><br />alternativ tekst: <i>'.$text_alt.'</i><br />'; echo 'Lastet opp av ' .$author.' <br /><br />'; } ?> <form name="thumb" method="post" enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF'];?>"> <table border="0"> <tr><td><input type="hidden" name="kategori" value="<?php $cat = $_GET['cat']; echo $cat; ?>"></td></tr> <tr><td class="text">Kommentar til bildet<br /><textarea class="submit" name="text_main" cols="60" rows="8"></textarea></td></tr> <tr><td class="text">Alternativ tekst<br /><textarea class="submit" name="text_alt" cols="60" rows="3"></textarea></td></tr> <tr><td class="text" colspan="3">Kategori: <select name = "kategori"> <? for($i = 0; $i<$lists; $i++) { echo "<option value = ".$list[$i][0]; if ($listid== $list[$i][0]) echo " selected"; echo ">".$list[$i][0]."</option>\n"; } ?> </select> </td></tr> <tr><td> </td></tr> <tr> <td class="text">Lastet opp av <input type="text" class="submit" name="author" style="width: 150px" value="test"></td> </tr> <tr> <td colspan="3" align="center"> <input name="Submit" class="submit" type="submit" value="Legg til bilde"></td></tr> <input name="submit_id" type="hidden" id="submit_id" value="1"> </table> </form> </body> </html> jeg er enda tok forresten bort den spørringa på id.. men det var kategori som havna i db'en.. Endret 8. oktober 2007 av robhaugen Lenke til kommentar
JohndoeMAKT Skrevet 8. oktober 2007 Del Skrevet 8. oktober 2007 Når jeg fikk se den ferdige siden tok det ikke mange sekundene å finne feilen med Firefox+Firebug, en kombinasjon omtrent obligatorisk for alle webdesignere. Feilen din er at du ikke har hermetegn " " rundt attributtverdiene. Når du skriver name = xyz skal det skrives name = "xyz" og src = "#" og value = "januar". Her er rettet kode i din egen "dialekt" : <select name = "list"> <? for($i = 0; $i<$lists; $i++) { echo '<option value = "'.$list[$i][1].'"'; if ($listid== $list[$i][1]) echo ' selected = "selected"'; echo ">".$list[$i][0]."</option>\n"; } ?> </select> ..og i min egen: <select name = "list"> <? for( $i = 0; $i < $lists; $i++ ) { ?> <option value = "<?= $list[$i][1] ?>"<?= $listid == $list[$i][1] ? ' selected = "selected"' : null ?>><?= $list[$i][0] ?></option><? } ?> </select> Lenke til kommentar
robhaugen Skrevet 8. oktober 2007 Forfatter Del Skrevet 8. oktober 2007 og det funka.. tusen takk var det bare en sånn jallafeil? merkes at det er leenge siden man drev på med dette.. og ikke kunne jeg php før heller så det er ikke rart jeg har glemt.. må tydeligvis sjekke ut firebug. det er forresten ikke min php dialekt.. det er "stjålet" dialekt. ikke rart jeg ikke skjønner hva jeg selv skriver :!: takk igjen Lenke til kommentar
JohndoeMAKT Skrevet 8. oktober 2007 Del Skrevet 8. oktober 2007 Jallafeil, "nybegynnerfeil" eller "feil du gjør når du er rusten" er nok alle brukbare beskrivelser av feilen. Nettlesere godtar så mye dårlig kode at det ofte er vanskelig å finne ut hva som virkelig er galt. Et tips til å plukke ut feil er å stadig validere mot en validator. Bruker du Opera kan du bare trykke CTRL-ALT-V for å gjøre det, og i andre browsere besøker du http://validator.w3.org/ og limer inn URL til siden du vil sjekke koden til. Den ville med en gang ha indikert omtrent hvor det var feil i koden din. Lenke til kommentar
robhaugen Skrevet 9. oktober 2007 Forfatter Del Skrevet 9. oktober 2007 Jallafeil, "nybegynnerfeil" eller "feil du gjør når du er rusten" er nok alle brukbare beskrivelser av feilen. Nettlesere godtar så mye dårlig kode at det ofte er vanskelig å finne ut hva som virkelig er galt. Et tips til å plukke ut feil er å stadig validere mot en validator. Bruker du Opera kan du bare trykke CTRL-ALT-V for å gjøre det, og i andre browsere besøker du http://validator.w3.org/ og limer inn URL til siden du vil sjekke koden til. Den ville med en gang ha indikert omtrent hvor det var feil i koden din. Vel... jeg bruker å validere mot w3 og det har jeg gjort omtrent siden Opera begynte med den snarveien men på denne siden bruker jeg et dreamweaver jallascript som ikke validerer i hele tatt så den går jo amok når jeg prøver å validere :!: må vel nesten gå gjennom det scriptet å prøve å rydde/rote det til litt... men takk for god hjelp uansett Lenke til kommentar
blackbrrd Skrevet 9. oktober 2007 Del Skrevet 9. oktober 2007 burde ikke denne tråden ligge på php delen av forumet? Lenke til kommentar
JohndoeMAKT Skrevet 10. oktober 2007 Del Skrevet 10. oktober 2007 Det har du selvsagt rett i og den er flyttet nå. Lenke til kommentar
robhaugen Skrevet 14. oktober 2007 Forfatter Del Skrevet 14. oktober 2007 Her var man tilbake med å slite litt med php.. :!: Den koden jeg fikk av JohnDoeMAKT fungerer fint. helt til jeg har lagt inn et valg i kategorier som inneholder tegnet " da kutter koden bort " selv om jeg gjerne ville ha den med.. fins det en fiks på det? html kildekoden ser slik ut i option valget: <select class="submit" name = "kategori"> <option value = "December 2007">December 2007</option> <option value = "February 2007">February 2007</option> <option value = "March 12"">March 12""</option></select> Jeg kunne jo sikkert bare latt være å bruke " men det er jo ikke bare jeg som skal bruke den siden og det er jo greiere å først prøve å gardere seg mot bruker"feil" først ... Lenke til kommentar
ymsefisen Skrevet 23. oktober 2007 Del Skrevet 23. oktober 2007 Man burde ta et kurs i html før man setter igang med webutvikling.. Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå