13. november 2005 - 15:49
Der er
15 kommentarer og 1 løsning
hente indhold fra DB som det står i DB´en
Jeg prøver at hente noget indhold fra en DB, men alt teksten bliver bare smidt sammen i en lang sætning uden opdeling i afsnit. connection: $query1 = mysql_query("SELECT * FROM sideindhold")or die(mysql_error()); $indhold = mysql_fetch_array($query1); og til at hente teksten: <?php echo $indhold['indhold']?> Hvad skal man gøre for at den forstår linieskift osv.? /Snig
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
13. november 2005 - 15:49
#1
Prøv: <?php echo nl2br($indhold['indhold']);?>
13. november 2005 - 15:55
#2
super det virker,.. hvad betyder nl2br? laver den mellemrum og så viddere om til html kode? I øvrigt hvis man med en menu knap skal hente en ny sides indhold frem med en ny overskrift og nyt sideindhold skal man så lave en ny php side eller kan man bare hente id=2 på eller anden måde?
13. november 2005 - 15:58
#3
nl2br betyder "new line to break" - så det siger vel næsten sig selv :) Det ville være ret smart at have 1 php side, hvor du så henter indhold i forhold til f.eks. et id. Især hvis det kun er teksten der ændres, men at layout skal være det samme hver gang...
13. november 2005 - 15:59
#4
Kig her for en forklaring af nl2br:
http://dk2.php.net/manual/da/function.nl2br.php Og medhensyn til den der menu knap, prøv:
<?
<form action="" method="POST">
<input type="submit" value="Gå til en anden side" name="submit">
if ($_POST['submit']) {
header(Location:
www.bla.dk );
}
</form>
?>
13. november 2005 - 16:00
#5
lille fejl
ændre:
header(Location:
www.bla.dk );
til:
header("Location:
www.bla.dk" );
13. november 2005 - 17:28
#6
jeg har prøvet at lave queryen om til: $where = ""; if ($_GET['id']) { $where = 'WHERE id = ' . $_GET['id']; } $query1 = mysql_query("SELECT * FROM sideindhold" . $where)or die(mysql_error()); $indhold = mysql_fetch_array($query1); Men hvordan kan man fortælle den at id = 1 til at starte på? Næste gang jeg trykker på en knap får den at vide id=2... men først hvordan fortælle at id=1 Man kan selvfølgelig skrive SELECT * FROM sideindhold where id = 1... men så er den jo ikke relativ.
13. november 2005 - 17:30
#7
F.eks.: $where = ""; if (isset($_GET['id']) && !empty($_GET['id'])) { $where = 'WHERE id = ' . $_GET['id']; } else { $where = 'WHERE id = 1'; }
13. november 2005 - 17:46
#8
ahh ja selvfølgelig... Men når jeg sætter din kode ind i stedet får jeg følgende fejl: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '= 1' at line 1 linie 1 er bare <?php Jeg har prøvet at nøjes med at sætte dette ind: $where = 'WHERE id = 1'; og der får jeg stadig samme fejl... burden den ikke bare sige at id = 1 i den sætning?
13. november 2005 - 17:49
#9
Den linie 1 den refererer til er ikke PHP's linie 1, men forespørgslens linie 1. Men paste lige hvad du har.
13. november 2005 - 17:57
#10
uhm jeg har: <?php include("db.php"); $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName); $where = ""; if (isset($_GET['id']) && !empty($_GET['id'])) { $where = 'WHERE id = ' . $_GET['id']; } else { $where = 'WHERE id = 1'; } $query1 = mysql_query("SELECT * FROM sideindhold" . $where)or die(mysql_error()); $indhold = mysql_fetch_array($query1); ?> og til at hente teksten ud de rigtige steder har jeg: <tr> <td align="left" valign="top" class="style2"><h1><?php echo $indhold['headline']?></h1> <p><?php echo nl2br($indhold['indhold']);?></p></td> </tr>
13. november 2005 - 18:02
#11
Ved ikke lige om det ændrer noget, men skift lige ' til " i din $where.
13. november 2005 - 18:03
#12
For den giver ingen fejl hvis du angiver det i adresselinien, vel?
13. november 2005 - 18:09
#13
jow det gør den faktisk,.. hvis jeg skriver ...php?id=2 i adresselinien får jeg =2 fejl i stedet for =1 fejl
13. november 2005 - 18:12
#14
Sådan skal den være: $query1 = mysql_query("SELECT * FROM sideindhold " . $where)or die(mysql_error());
13. november 2005 - 18:20
#15
tsk tsk havde glemt i mellemrum flot nok :P Tak for hjælpen m8 smider du ikke lige et svar =D
13. november 2005 - 18:28
#16
Jeg så det heller ikke før nu :) Og selv tak...
Vi tilbyder markedets bedste kurser inden for webudvikling