Afbeelding bij resultaat
In een column van een SQL-tabel staat soms bij een record een inhoud en soms niet. Na een zoekquery wil ik de inhoud tonen en los daarvan een afbeelding laten zien. Als er geen inhoud is dan moet er ook geen afbeelding te zien zijn. Ik ben al een tijdje bezig, maar ik zie waarschijnlijk door de bomen het bos niet meer. Onderstaande laat bij elke (lege)record de afbeelding zien.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?
$sql = "SELECT * FROM table ";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{
echo "";
while ($row = mysql_fetch_array($res))
{
echo "<img src=afbeelding> $row[ID]
";
}
echo "
";
}
else
{
echo "niks";
}
?>
$sql = "SELECT * FROM table ";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{
echo "";
while ($row = mysql_fetch_array($res))
{
echo "<img src=afbeelding> $row[ID]
";
}
echo "
";
}
else
{
echo "niks";
}
?>
Alvast kei bedankt
Jules
Wat doet hij nu verkeerd dan?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?
$sql = "SELECT woonplaats FROM table ";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{
echo "";
while ($row = mysql_fetch_array($res))
{
echo "<img src=afbeelding> $row[woonplaats]
";
}
echo "
";
}
else
{
echo "niks";
}
?>
$sql = "SELECT woonplaats FROM table ";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{
echo "";
while ($row = mysql_fetch_array($res))
{
echo "<img src=afbeelding> $row[woonplaats]
";
}
echo "
";
}
else
{
echo "niks";
}
?>
In SQL doe je dat zo:
en in php doe je dat zo:
Code (php)
1
2
3
4
5
2
3
4
5
while ($row = mysql_fetch_array($res)){
if($row[woonplaats] != NULL){
echo "<img src=afbeelding> $row[woonplaats]";
};
}
if($row[woonplaats] != NULL){
echo "<img src=afbeelding> $row[woonplaats]";
};
}
Gewijzigd op 01/01/1970 01:00:00 door H Hamming
ben ik geloof ik al mee bezig geweest en werkt (nog) niet. Moet ik dan ook de SQL database van tabel woonplaats zeker ook de standaard wijzigen wijzigen in NULL of NOT NULL. Maar ik geloof dat het pas effectief wordt bij records welke daarna ingevoerd worden?
(http://www.deplane.nl/facts/showc1.php)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?
$sql = "SELECT * FROM deplane_images";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{
echo "";
while ($row = mysql_fetch_array($res)){
if($row[Acars] != NULL){
echo "<img src=img/acars.jpg> $row[Acars]<br>";
};
}
echo "
";
}
else
{
echo "niks";
}
?>
$sql = "SELECT * FROM deplane_images";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{
echo "";
while ($row = mysql_fetch_array($res)){
if($row[Acars] != NULL){
echo "<img src=img/acars.jpg> $row[Acars]<br>";
};
}
echo "
";
}
else
{
echo "niks";
}
?>
En dat in tegenstelling waar Acars=NULL niet in voor komt(http://www.deplane.nl/facts/showc2.php)
Maar het wordt anders bij onderstaande query welke is verwerkt een paging class. Daar verschijnt een blanco pagina bij iedere poging bij de NULL varianten.
Onderstaande is als voorbeeld en zit geen Acars=NULL inverwerkt.
Je ziet bij ieder blokje tekst een kleine image (a) Het is de bedoeling dat ie alleen verschijnt wanneer er daadwerkelijk in column Acars tekst staat welke i.d.g. alleen te zien is bij mouse-over. Je ziet dat mouse-over niet bij iedere (a) informatie geeft
(http://www.deplane.nl/facts/shcat.php?keyword=13&page=1)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<?
require("classes/paging_class.php");
$paging=new paging(10,5, "prev", "next", "(%%number%%)");
$paging->db("localhost","User","pass","db");
$paging->query("select * from deplane_images where cat_id = ($_GET[keyword]) order by Date desc");
$page=$paging->print_info();
if (!empty($page["keyword"]))
echo "Keyword : <b>$page[keyword]</b><br>\n";
if (empty($page["total"])) {
echo "<tr><td class=\"head2\"><center><img src=img/ellensi.jpg><br>\"Sorry, I've found nothing!\"</b></tr></td>\n";
} else {
echo "<!-- Data $page[start] - $page[end] of $page[total] [Total $page[total_pages] Pages]<br>-->
<!--<tr><td class=\"head2\"><center><img src=img/ellens.jpg><br><bgsound src=\"../sound/cabintone2.wav\">There are $page[total] planes arrived of $_GET[keyword] at $page[total_pages] Platforms. These are planes $page[start] to $page[end]\"</td></tr>--> \n";
}
echo"<center>There are $page[total] planes displayed on $page[total_pages] Platforms. These are planes $page[start] to $page[end]\"</td></tr></table></td></tr>";
while ($row=$paging->result_assoc())
{
$color=$paging->print_color("yellow","#FFCCCC")
?>
<tr><td class=head2 valign=left>
<table class=head2 cellspacing=0 border=0 width="450"><tr><td valign=top>
<table class=head2 cellspacing=0>
<tr><td colspan=2 width=330><b><?=$row[Name]?> <?=$row[Aircrafttype]?></b> - <?=$row[Airliner]?></td></tr>
<tr><td width=100>Regi:</td><td width=360><?=$row[Regi]?></td></tr>
<tr><td>C/n year:</td><td><?=$row[CN]?> <?=$row[Year]?></td></tr>
<tr><td>Airport:</td><td><?=$row[Airport]?></td></tr>
<tr><td><small>Views: <?=$row[Hits]?></td><td><small>Date: <?=$row[Date]?></td></tr>
<tr><td colspan=2 width=330><small><?=$row[DEPARR]?> <?=$row[Flightnr]?> <?=$row[Dest]?> <?=$row[Destport]?> <?=$row[Destportname]?> <?=$row[Destportcountry]?>
<br><img src=img/acars.jpg title=\"<?=$row[Acars]?>\">
</td></tr>
</td></tr>
</table>
</td><td valign=middle><a href=http://www.deplane.nl/facts/show.php?keyword=<?=$row[image_id]?>><img src=../../data/thumbnails/<?=$row[cat_id]?>/<?=$row[image_thumb_file]?> border=1></a>
</td></tr></table>
</td></tr>
<?
}
echo" <tr><td class=head2> \n";
echo $paging->print_link();
//FUNCTION
function explode_keyword($q)
{
//trim
$q=trim($q);
$q=preg_replace("/[\s]+/"," ",$q);
$mode="AND";
$q2=explode(" ",$q);
for ($i=0;$i<count($q2);$i++) {
$condition=$condition."image_keywords"." like '%".$q2["$i"]."%' ".$mode." limit 0,1";
}
$condition=substr($condition,0,-4);
return $condition;
}
?>
require("classes/paging_class.php");
$paging=new paging(10,5, "prev", "next", "(%%number%%)");
$paging->db("localhost","User","pass","db");
$paging->query("select * from deplane_images where cat_id = ($_GET[keyword]) order by Date desc");
$page=$paging->print_info();
if (!empty($page["keyword"]))
echo "Keyword : <b>$page[keyword]</b><br>\n";
if (empty($page["total"])) {
echo "<tr><td class=\"head2\"><center><img src=img/ellensi.jpg><br>\"Sorry, I've found nothing!\"</b></tr></td>\n";
} else {
echo "<!-- Data $page[start] - $page[end] of $page[total] [Total $page[total_pages] Pages]<br>-->
<!--<tr><td class=\"head2\"><center><img src=img/ellens.jpg><br><bgsound src=\"../sound/cabintone2.wav\">There are $page[total] planes arrived of $_GET[keyword] at $page[total_pages] Platforms. These are planes $page[start] to $page[end]\"</td></tr>--> \n";
}
echo"<center>There are $page[total] planes displayed on $page[total_pages] Platforms. These are planes $page[start] to $page[end]\"</td></tr></table></td></tr>";
while ($row=$paging->result_assoc())
{
$color=$paging->print_color("yellow","#FFCCCC")
?>
<tr><td class=head2 valign=left>
<table class=head2 cellspacing=0 border=0 width="450"><tr><td valign=top>
<table class=head2 cellspacing=0>
<tr><td colspan=2 width=330><b><?=$row[Name]?> <?=$row[Aircrafttype]?></b> - <?=$row[Airliner]?></td></tr>
<tr><td width=100>Regi:</td><td width=360><?=$row[Regi]?></td></tr>
<tr><td>C/n year:</td><td><?=$row[CN]?> <?=$row[Year]?></td></tr>
<tr><td>Airport:</td><td><?=$row[Airport]?></td></tr>
<tr><td><small>Views: <?=$row[Hits]?></td><td><small>Date: <?=$row[Date]?></td></tr>
<tr><td colspan=2 width=330><small><?=$row[DEPARR]?> <?=$row[Flightnr]?> <?=$row[Dest]?> <?=$row[Destport]?> <?=$row[Destportname]?> <?=$row[Destportcountry]?>
<br><img src=img/acars.jpg title=\"<?=$row[Acars]?>\">
</td></tr>
</td></tr>
</table>
</td><td valign=middle><a href=http://www.deplane.nl/facts/show.php?keyword=<?=$row[image_id]?>><img src=../../data/thumbnails/<?=$row[cat_id]?>/<?=$row[image_thumb_file]?> border=1></a>
</td></tr></table>
</td></tr>
<?
}
echo" <tr><td class=head2> \n";
echo $paging->print_link();
//FUNCTION
function explode_keyword($q)
{
//trim
$q=trim($q);
$q=preg_replace("/[\s]+/"," ",$q);
$mode="AND";
$q2=explode(" ",$q);
for ($i=0;$i<count($q2);$i++) {
$condition=$condition."image_keywords"." like '%".$q2["$i"]."%' ".$mode." limit 0,1";
}
$condition=substr($condition,0,-4);
return $condition;
}
?>
Let niet op de HTML-codes
Of iets zoiets niet mogelijk. Kan ook natuurlijk. Dan zal ik de afbeelding in de database moeten zetten.
Gewijzigd op 01/01/1970 01:00:00 door Koosje Derks
Succes ;) Zeker als je al quotes vergeet om een key.
if($row[Acars] != NULL){
in deze paging script plaats werkt het niet.
na drie dagen pauze kom ik er niet uit. Telkens lijk ik er in de buurt te komen, maar met de haven in zicht loop ik toch vast. Ik denk dat het niet gaat, maar ik wil nog een poging wagen en het anders uitleggen.
Stel ik heb 10 records in een aderssen databestand. Bij het uitlezen wil ik zowel de naam, adres en woonplaats tonen, dus ik krijg 10 adressen. Maar als er bij één de woonplaats niet ingevuld is wil ik een afbeelding (of een tekst "geen woonplaats") daarvoor in de plaats tonen.
help me uit m'n droom.
groeten