Heey, ik heb alweer een probleem waar ik zolang naar zit te kijken. Ik heb uit de database een titel en tekst gehaald van een ID. Eerst deed hij het, maar nu ik een paar replace dingen erbij doe, geeft hij niets meer weer.


<?php
include("config.php");
include("htmltop.php");

$sql = "
SELECT
id,
titel,
tekst
FROM
zoeken
WHERE
id = '".$_GET['id']."'";
$res = mysql_query($sql) or die(mysql_error());
$row = mysql_fetch_array($res)
$tekst = $row['tekst'];
$tekst = str_replace ("[br]","\n",$tekst);
$tekst = str_replace ("\n","<br>",$tekst);

$tekst = preg_replace("/\[img\](.*?)\[\/img\]/si", "<img src="1" border="0">",$tekst);

echo "<p>Titel: <b>".$row['titel']."</b><br>";
echo "Tekst: <b>".$tekst."</b>";
?> 


In sommige dingen ben ik dus nog niet zo goed met PHP, kan iemand helpen? Hij laat trouwens de titel wel zien, dus de fout moet in $tekst zitten die ik net heb gemaakt. Alvast bedankt!


Edit: Ik heb net even de replace dingen // ervoor gezet, nu zegt hij dit:
Parse error: syntax error, unexpected T_VARIABLE in /usr/export/www/hosting/miniejjj/vliegtuig.php on line 16

Er is dus iets mis met $tekst = $row['tekst']; Kan iemand dat veranderen? :|
$row = mysql_fetch_array($res)

daar staat geen ; achter xD
moet dus zijn
$row = mysql_fetch_array($res);
Oke bedankt. Maar nu geeft hij weer een foutmelding.

<?php
include("config.php");
include("htmltop.php");

$sql = "
SELECT
id,
titel,
tekst
FROM
zoeken
WHERE
id = '".$_GET['id']."'";
$res = mysql_query($sql) or die(mysql_error());
$row = mysql_fetch_array($res);
$tekst = $row['tekst'];
$tekst = str_replace ("[br]","\n",$tekst);
$tekst = str_replace ("\n","<br>",$tekst);
$tekst = preg_replace("/\[img\](.*?)\[\/img\]/si", "<img src="1" border="0">",$tekst);

echo "<p>Titel: <b>".$row['titel']."</b><br>";
echo "Tekst: <b>".$tekst."</b>";
?>

Dit is de foutmelding:

Parse error: syntax error, unexpected T_LNUMBER in /usr/export/www/hosting/miniejjj/vliegtuig.php on line 19


Iemand nog een idee?
jup gevonden XD

je kunt geen " in een " gebruiken
even veranderen naar dit

<?php
$tekst = preg_replace("/\[img\](.*?)\[\/img\]/si", "<img src='1' border='0'>",$tekst);
?>

HTML vereist dubbele quotes, je wilt het dus veranderen naar:
<?php
$tekst = preg_replace("/\[img\](.*?)\[\/img\]/si", '<img src="$1" border="0">',$tekst);
?>
ps. Merk ook de $1 in het src attribuut op. Het lijkt me dat je daar immers de tekst tussen de twee [img] tags wilt plaatsen...
Uhm, bedoel je niet enkele quotes bij HTML? In ieder geval bedankt, want hij doet het :) Jullie zijn super !
Miniejjj schreef op 29.12.2007 11:20
Uhm, bedoel je niet enkele quotes bij HTML?
Nee, de waarde van de attributen binnen HTML tags moeten tussen dubbel quotes staan. Voorbeeld:

<img src="plaatje.png" alt="Blaat" />

Reageren