Ik krijg het echt niet voor elkaar om images uit mijn database te laden. Zou iemand mij a.u.b. willen helpen?

Mijn code:
<?php
include('dbase.php');
$dbh=mysql_connect("$dbhost","$dbuser","$dbpass");
?>
<?php
mysql_select_db("247ff") or die ("Kan de database niet openen");
?>

<?php

if(isset($_GET['recordid']) && is_numeric($_GET['recordid']))//is er een nummer meegegeven?
{
if($query = mysql_query("SELECT * FROM artikelen WHERE recordid = ".$_GET['recordid']))
{
if(mysql_num_rows($query) > 0)//zijn er artikelen met dat nummer?
{
$artikel = mysql_fetch_assoc($query);//nu niet in een while-lus. Er is maar 1 resultaat.
echo '<table width="760">';
echo '<tr>';
echo '<td CLASS="artikel">';
echo '<h1>'.$artikel['title'].'</h1>';
echo '<small>'.$artikel['date'].'</small>';
echo '<p>'.$artikel['artikeltekst'].'</p>';
}
else
{
echo 'Artikel "'.$_GET['recordid'].'" bestaat niet';
}
}
}
else
{
header('Location: index.php');//geen nummer? Dan maar naar de lijst
}

?>
<?php
if(isset($_GET['recordid']) && is_numeric($_GET['recordid']))//is er een nummer meegegeven?
{
if($query = mysql_query("SELECT * FROM artikelen WHERE recordid = ".$_GET['recordid']))
{
if(mysql_num_rows($query) > 0)//zijn er artikelen met dat nummer?
while ($afbeeldingen = mysql_fetch_array($query)){
for ($teller=1;$teller<=10;$teller++){
$afbeelding = "image00".$teller;

if ($teller == 10){
$afbeelding = "image0".$teller;
}

echo '<a href="images/'.$afbeeldingen[$afbeelding].'"><img src="images/'.$afbeeldingen[$afbeelding].'"
></a>';
}}}}
?>

Bovenstaande code moet het volgende doen: Op index.php is een link naar een artikel aangeclickt, vervolgens opent bovenstaande artikel.php. Als eerste wil ik dat ie titel, en artikeltekst laadt, dat gaat goed. Vervolgens heb ik in de tabel van het zelfde recordid tussen 0 en 10 images staan in 2 formaten; image001-image010 en imagesmall001-imagesmall010. Ik wil graag dat dmv de lus het juiste aantal afbeeldingen(imagesmall) geladen worden, die weer een link bevatten naar image...

Het gaat niet goed; ik krijg in mijn browser 8 lege afbeeldingen(wit vak/rood kruis). De code zal wel niet ok zijn, maar ik twijfel ook aan de paden. Op de server heb ik een map images. In die map heb ik per artikel een map aangemaakt met de naan artikel000, enz. In die map heb ik image... en imagsmall... beide staan.

Ik zou het erg fijn vinden als iemand me kan helpen, want ik kom er zelf niet uit,

Eddie
3 dagen zweten leverde bijna niets op en opeens ben ik weer een stap verder. Ik heb onderstaand stuk code aangepast. Ik krijg in mijn browser nu de afbeeldingen die horen te verschijnen te zien, maar als er minder dan 10 in mijn record in de dbtabel staan verschijnen er wel afbeeldingborders met een vierkantje en een rood kruis. Maw deze worden toch opgehaald, en dat moet niet.

while ($afbeeldingen = mysql_fetch_array($query)){
for ($teller=1;$teller<=10;$teller++){
$afbeelding = "imagesmall00".$teller;

if ($teller == 10){
$afbeelding = "imagesmall0".$teller;
}

echo '<a href="'.$afbeeldingen[$afbeelding].'"><img src="'.$afbeeldingen[$afbeelding].'"
></a>';


Iemand een tip?

Eddie
<?php
if(is_file($afbeeldingen[$afbeelding]))
{
echo '<a href="'.$afbeeldingen[$afbeelding].'"><img src="'.$afbeeldingen[$afbeelding].'"
></a>';
}
?>
SanThe,

Ik had deze regel al geprobeert:
if(is_array($afbeeldingen[$afbeelding])) en vervolgens de jouwe:
if(is_file($afbeeldingen[$afbeelding])) ook.
Misschien zet ik 'm op de verkeerde regel(ik heb het idee dat ik alles al geprobeert heb(maar zal wel niet, anders...). kun jij me duidelijk maken wáár ik dit in de code moet plaatsen?

Eddie
Ik krijg het nog steeds níet voor elkaar. De image-velden in mijn db-tabel die geen waarde bevatten worden in mijn browser geladen als 'lege afbeelding". Moet ik in de db misschien iets aanpassen?

Eddie
In jouw 1e post script in plaats van
<?php
echo '<a href="images/'.$afbeeldingen[$afbeelding].'"><img src="images/'.$afbeel
?>
dit zetten
<?php
if(file_exists($afbeeldingen[$afbeelding]))
{
echo '<a href="'.$afbeeldingen[$afbeelding].'"><img src="'.$afbeeldingen[$afbeelding].'"
></a>';
}
?>

$string = "";
$string .= "sfgdfgdfgdfgsdfgdfgklnfgkldjfgkljdgk";
$string .= "sfgdfgdfgdfgsdfgdfgklnfgkldjfgkljdgk";
$string .= "sfgdfgdfgdfgsdfgdfgklnfgkldjfgkljdgk";
$string .= "sfgdfgdfgdfgsdfgdfgklnfgkldjfgkljdgk";
$string .= "sfgdfgdfgdfgsdfgdfgklnfgkldjfgkljdgk";
$string .= "sfgdfgdfgdfgsdfgdfgklnfgkldjfgkljdgk";
$string .= "sfgdfgdfgdfgsdfgdfgklnfgkldjfgkljdgk";

print ( $string ) ;
@iemand: Het wordt tijd dat vrij posten ook op het forum verboden wordt. Dan moet ze zich maar registreren, niet?
SanThe,

Jouw tip gaf me nieuwe moed, bedankt daarvoor. Het werkte niet bij mij, ik kreeg helemaal geen afbeeldingen meer te zien. Uiteindelijk heb ik het opgelost met:
if (!empty($afbeeldingen[$afbeelding])){
echo '<P><a href="image.php?recordid='.$_GET['recordid'].'"><img src='.$afbeeldingen[$afbeelding].'
></a></P>';

Ik ben nog maar een week of 3 bezig met php en rol van het ene probleem in het andere. Gelukkig maar, want daar leer ik een hoop van. Ben nu aan het uitzoeken hoe ik '.$afbeeldingen[$afbeelding].' na het aanclicken van de link vergroot op mijn image.php te zien krijg. Ik ga er vanuit dat ik behalve het recordid ook gegevens van het aangeclickte image moet meezenden. Tot dusver vind ik in geen enkel boek informatie hierover,

Eddie
yo mensen als ik bij runescape een wereld kies dan wil hij niet meer laden maar word het scherm wit en links vanboven komt er een wit vakje met een rood kruisje in. Ik heb geprobeerd het op te lossen hoe runescape faq het zegt maar geen 1 van deze werkt . (gisteren werkte het nog en nu niet meer.)

ps:ik hoop dat jullie mij kunne helpen alvast bedankt.
als je weet hoe je me kan helpen mail me aub op [email protected]

Reageren