DanielP Skrevet 27. januar 2004 Del Skrevet 27. januar 2004 (endret) Har litt problemer med ett script. Så hjelp settes pris på Her er hva jeg får med view.php Sjekk her Her er view.php: <?php include "config.php"; $db = mysql_connect($db_host,$db_user,$db_pass); mysql_select_db ($db_name) or die ("Cannot connect to database"); $query = "SELECT * FROM nyhetene ORDER BY news_id DESC LIMIT 10"; $result = mysql_query($query); /* Here we fetch the result as an array */ while($r=mysql_fetch_array($result)) { print "$r [tittel] "; print "$r [date] <br />"; print "$r [smakebit] <br />"; print "$r [forfatter] "; } mysql_close($db); ?> Her er resten av scriptet: Legg til: <form action="index.php?section=nyheter/process" method="post"> <p> Tittel: <input type="text" class="logintext" name="tittel"> </p> <p> Forfatter: <input type="text" class="logintext" name="forfatter"> </p> <p> Smakebit: </p> <p><textarea name="smakebit" cols="40" rows="6"></textarea> </p> <p><textarea name="hele" cols="40" rows="6"></textarea> </p> <input type="submit" name="submit" value="send inn" class="knapp"> </form> Process <?php include "nyheter/config.php"; $db = mysql_connect($db_host, $db_user, $db_pass); mysql_select_db ($db_name) or die ("cannot connect to database"); $q="INSERT into nyhetene (news_id,tittel,forfatter,date,smakebit,hele) VALUES ('','$tittel','$forfatter','now()','$smakebit','$hele')"; $result = mysql_query($q, $db) or die ("Kunne ikke utføre spørring : $q." . mysql_error()); if ($result) { echo "Nyheter lagt til <a href=\"index.php?section=main\">Hovedsiden</a>"; } ?> Det blir lagt til i SQL databasen, men ikke skikkelig. Smakebit, hele forfatter og tittel blir bare lagt til som " ;;;;;; ", og jeg er ny med SQL og PHP, så kunne trengt litt hjelp. Takker for alle svar DanielP Endret 27. januar 2004 av DanielP Lenke til kommentar
sven-o Skrevet 27. januar 2004 Del Skrevet 27. januar 2004 I første omgang kan du forandre Process til noe sånt: <?php include "nyheter/config.php"; extract($_POST); $db = mysql_connect($db_host, $db_user, $db_pass); mysql_select_db ($db_name) or die ("cannot connect to database"); $q="INSERT into nyhetene (tittel,forfatter,date,smakebit,hele) VALUES ('".$tittel."','".$forfatter."','".now()."','".$smakebit."','".$hele."')"; $result = mysql_query($q, $db) or die ("Kunne ikke utføre spørring : $q." . mysql_error()); if ($result) { echo "Nyheter lagt til <a href=\"index.php?section=main\">Hovedsiden</a>"; } ?> Lenke til kommentar
sven-o Skrevet 27. januar 2004 Del Skrevet 27. januar 2004 Videre kan du erstatte dette: while($r=mysql_fetch_array($result)) { print "$r [tittel] "; print "$r [date] <br />"; print "$r [smakebit] <br />"; print "$r [forfatter] "; } mysql_close($db); Med dette: while($r=mysql_fetch_array($result)) { print $r[tittel]." "; print $r[date]." <br />"; print $r[smakebit]." <br />"; print $r[forfatter]; } mysql_close($db); Du kan ikke ha mellomrom mellom $r(som er arrayet) og [index] som er indexen til arrayet. I tillegg foretrekker jeg også å holde variabler _utenfor_ "", og heller konkatinere med punktum. Det er god programmeringsskikk. Lenke til kommentar
DanielP Skrevet 27. januar 2004 Forfatter Del Skrevet 27. januar 2004 (endret) Flott !!!! Tusen takk 1.Men to ting til. Viss jeg ville laget en les mer link i view.php til view2.php, hvordan ville jeg laget denne. Og ville view2.php vært helt like view1.php? 2.Ville også gjerne hatt en mulighet for å legge til ett bilde når jeg poster. At jeg skriver inn linken til bildet, og når folk ser innlegget, så ser de bildet. Hvordan gjør jeg dette? Setter pris på alle hjelp. DanielP Endret 27. januar 2004 av DanielP Lenke til kommentar
sven-o Skrevet 27. januar 2004 Del Skrevet 27. januar 2004 Flott !!!! Tusen takk 1.Men to ting til. Viss jeg ville laget en les mer link i view.php til view2.php, hvordan ville jeg laget denne. Og ville view2.php vært helt like view1.php? 2.Ville også gjerne hatt en mulighet for å legge til ett bilde når jeg poster. At jeg skriver inn linken til bildet, og når folk ser innlegget, så ser de bildet. Hvordan gjør jeg dette? Setter pris på alle hjelp. DanielP 1. Litt usikker på hva du mener. Hele innlegget er jo lagret i $r[hele], og da kan du jo skrive ut denne i view2.php eller noe? 2. Å legge inn bilde blir jo bare å skrive ren html i tekstområdet ditt(hele). For å gjøre det enklere, kan du f.eks bruke javascript, slik: <a href='javascript:settinn()'>Sett inn bilde</a> <script language='javascript'> function settinn(){ document.all['hele'].value += '<img href=\''+prompt('Angi kilden til bildet:','')+'\'>'; } </script> Lenke til kommentar
DanielP Skrevet 27. januar 2004 Forfatter Del Skrevet 27. januar 2004 ok, greit. Men hvordan henter jeg ut bare den artikkelen. Og hvordan ville linken til view2.php vært? eks:? <a href="index.php?section=nyheter/view2&id"> ??? Takker DanielP Lenke til kommentar
sven-o Skrevet 27. januar 2004 Del Skrevet 27. januar 2004 Noe sånt? view.php: <?php include "config.php"; $db = mysql_connect($db_host,$db_user,$db_pass); mysql_select_db ($db_name) or die ("Cannot connect to database"); $query = "SELECT * FROM nyhetene ORDER BY news_id DESC LIMIT 10"; $result = mysql_query($query); /* Here we fetch the result as an array */ while($r=mysql_fetch_array($result)) { print "$r[tittel] "; print "$r[date] <br />"; print "$r[smakebit] <br />"; print "$r[forfatter] <br>"; print "<a href=\"index.php?section=nyheter/view2&news_id=".$r[news_id]."\">Les mer</a>"; } mysql_close($db); ?> view2.php: ]<?php include "config.php"; $db = mysql_connect($db_host,$db_user,$db_pass); mysql_select_db ($db_name) or die ("Cannot connect to database"); $query = "SELECT * FROM nyhetene WHERE news_id="$_GET['news_id']; $result = mysql_query($query); /* Here we fetch the result as an array */ if($r=mysql_fetch_array($result)) { print "$r[tittel] "; print "$r[date] <br />"; print "$r[hele] <br />"; print "$r[forfatter] <br>"; print "<a href=\"index.php?section=nyheter/view2&news_id=".$r[news_id]."\">Les mer</a>"; } else print "Fant ikke artikkelen!"; mysql_close($db); ?> ...i korte drag. Har ikke testet det, men burde være en god dytt i riktig retning. 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å