Rollover werkt niet als ik het uitlees vanuit tabel
Ik heb een vraagje over de volgende code.
Ik heb hem getest met o.a. gewoon de namen die in de tabel staan.
Maar zodra ik dit {$Rij2[thumb_zw]} in de code zet doet de rollover het niet meer.
Hij laat dan alleen de thumb zien die in de <img> staat.
Weet iemand wat ik hier fout doe?
Alvast bedankt!
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$opdracht2 = "select * from portfolio order by portfolio_ID desc";
$result2 = mysql_query($opdracht2);
while ($Rij2 = mysql_fetch_array($result2))
{
echo "<div style='width:111px; height:111px; margin:20px; float:left;'>";
echo "<a href=\"portfolio5_goed.php?portfolio_ID=$Rij2[portfolio_ID]\"";
echo "onMouseOver=\"image0.src='images/thumb_fc/{$Rij2[thumb_fc]}';\" onMouseOut=\"image0.src='images/thumb_zw/{$Rij2[thumb_zw]}';\">";
echo "<img name=\"image0\" src=\"images/thumb_zw/{$Rij2[thumb_zw]}\">";
echo "</a>";
echo "</div>";
}
?>
$opdracht2 = "select * from portfolio order by portfolio_ID desc";
$result2 = mysql_query($opdracht2);
while ($Rij2 = mysql_fetch_array($result2))
{
echo "<div style='width:111px; height:111px; margin:20px; float:left;'>";
echo "<a href=\"portfolio5_goed.php?portfolio_ID=$Rij2[portfolio_ID]\"";
echo "onMouseOver=\"image0.src='images/thumb_fc/{$Rij2[thumb_fc]}';\" onMouseOut=\"image0.src='images/thumb_zw/{$Rij2[thumb_zw]}';\">";
echo "<img name=\"image0\" src=\"images/thumb_zw/{$Rij2[thumb_zw]}\">";
echo "</a>";
echo "</div>";
}
?>
Er heeft nog niemand gereageerd.
En ik ben er zelf nog steeds niet uitgekomen....
Weet er echt niemand wat ik fout doe?
Groetjes Lotte
Linkje voor het ophalen van gegevens, met foutafhandeling, zoals het echt moet!
- Hier staat een voorbeeld van een query, en pas dat eens toe met jouw gegevens.
- Tevens heb je GEEN foutafhandeling. Jij kan nu niet zien of er een fout in je query zit, of er geen gegevens zijn ...
- Ook het '*' kan je beter niet gebruiken, beter gewoon de gegevens ophalen dat je nodig hebt.
- Gebruik ook hoofdletters in je constante (zie mijn linkje).
Misschien een oplossing:
Vervang regel 5 even door deze: while($Rij2 = mysql_fetch_assoc($result2))
Jij gebruik mysql_fetch_array.
Nog even een opmerking:
html is met dubbele quotes (") en php met enkele quotes (').
Als je html in php gaat gebruiken gebruik je dubbele quotes ("). Logisch?
Voorbeeld:
Pas dit even toe, en het gaat allemaal werken :)
Let ook even op hoe je een php variabele in html gaat schrijven:
Met vriendelijke groet
Dem
- Hier staat een voorbeeld van een query, en pas dat eens toe met jouw gegevens.
- Tevens heb je GEEN foutafhandeling. Jij kan nu niet zien of er een fout in je query zit, of er geen gegevens zijn ...
- Ook het '*' kan je beter niet gebruiken, beter gewoon de gegevens ophalen dat je nodig hebt.
- Gebruik ook hoofdletters in je constante (zie mijn linkje).
Misschien een oplossing:
Vervang regel 5 even door deze: while($Rij2 = mysql_fetch_assoc($result2))
Jij gebruik mysql_fetch_array.
Nog even een opmerking:
html is met dubbele quotes (") en php met enkele quotes (').
Als je html in php gaat gebruiken gebruik je dubbele quotes ("). Logisch?
Voorbeeld:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
echo "<div style='width:111px; height:111px; margin:20px; float:left;'>";
echo "<a href=\"portfolio5_goed.php?portfolio_ID=$Rij2[portfolio_ID]\"";
#Vervang dit door dit:
echo '<div style="width:111px; height:111px; margin:20px; float:left;">';
echo '<a href="portfolio5_goed.php?portfolio_ID='.$Rij2[portfolio_ID].'"';
?>
echo "<div style='width:111px; height:111px; margin:20px; float:left;'>";
echo "<a href=\"portfolio5_goed.php?portfolio_ID=$Rij2[portfolio_ID]\"";
#Vervang dit door dit:
echo '<div style="width:111px; height:111px; margin:20px; float:left;">';
echo '<a href="portfolio5_goed.php?portfolio_ID='.$Rij2[portfolio_ID].'"';
?>
Pas dit even toe, en het gaat allemaal werken :)
Let ook even op hoe je een php variabele in html gaat schrijven:
Code (php)
1
2
3
2
3
<?php
echo 'Dit is een zinnetje, en dit is een variabele: '.$variabel.' zoals je ziet!'.
?>
echo 'Dit is een zinnetje, en dit is een variabele: '.$variabel.' zoals je ziet!'.
?>
Met vriendelijke groet
Dem
Gewijzigd op 19/07/2012 15:02:41 door - Diov -
Uberhaupt zou ik dan ook nog eens gaan kijken naar het gebruik van quotes (' voor strings in php, " voor attributen in HTML) en hoe je variabelen opneemt in een php string. Zoals je het doet kan het, maar dan moet je dubbele quotes gebruiken en dat is dus niet het handigst.
Bedankt voor de link die je me hebt gestuurd!
Heeft me heel erg geholpen met de netheid van mijn script! Maar ook om fouten eruit te halen etc.
Vooral het gedeelte errors weergeven kon ik heel goed gebruiken.
Ben nu al de hele middag bezig maar de roll over werkt dus nog steeds niet...
Ik heb het hier onder nu op 2 manieren geprobeerd maar die doen het dus allebei niet, en het zal vast een stomme fout zijn maar ik kom er dus niet achter.
Weten jullie misschien wat het is?
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
<?php
while ($row_thumbs = mysql_fetch_assoc($result_get_thumbs))
{
echo '<div style="width:111px; height:111px; margin:23px; float:left;">';
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src=images/thumb_fc/'.$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src=images/thumb_zw/'.$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
echo '</div>';
echo '<div style="width:111px; height:111px; margin:23px; float:left;">';
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src='.images/thumb_fc/$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src='.images/thumb_zw/$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
echo '</div>';
}
?>
while ($row_thumbs = mysql_fetch_assoc($result_get_thumbs))
{
echo '<div style="width:111px; height:111px; margin:23px; float:left;">';
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src=images/thumb_fc/'.$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src=images/thumb_zw/'.$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
echo '</div>';
echo '<div style="width:111px; height:111px; margin:23px; float:left;">';
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src='.images/thumb_fc/$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src='.images/thumb_zw/$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
echo '</div>';
}
?>
@ Lotte, kan je anders eens heel je script geven? Met je query?
$sql_get_thumbs = "SELECT * FROM portfolio ORDER BY portfolio_ID DESC";
if (($result_get_thumbs = mysql_query($sql_get_thumbs)) === false)
{
echo showSQLError($sql_get_thumbs,mysql_error(),'Kan thumbs niet laten zien.');
}
elseif (mysql_num_rows($result_get_thumbs) == 0)
{
echo 'Geen thumbs gevonden!';
}
else
{
while ($row_thumbs = mysql_fetch_assoc($result_get_thumbs))
{
echo '<div style="width:111px; height:111px; margin:23px; float:left;">';
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src=images/thumb_fc/'.$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src=images/thumb_zw/'.$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
echo '</div>';
echo '<div style="width:111px; height:111px; margin:23px; float:left;">';
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src='.images/thumb_fc/$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src='.images/thumb_zw/$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
echo '</div>';
}
;
}
?>
Toevoeging op 19/07/2012 18:56:17:
Sorry nog een keertje
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
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
<?php
$sql_get_thumbs = "SELECT * FROM portfolio ORDER BY portfolio_ID DESC";
if (($result_get_thumbs = mysql_query($sql_get_thumbs)) === false)
{
echo showSQLError($sql_get_thumbs,mysql_error(),'Kan thumbs niet laten zien.');
}
elseif (mysql_num_rows($result_get_thumbs) == 0)
{
echo 'Geen thumbs gevonden!';
}
else
{
while ($row_thumbs = mysql_fetch_assoc($result_get_thumbs))
{
echo '<div style="width:111px; height:111px; margin:23px; float:left;">';
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src=images/thumb_fc/'.$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src=images/thumb_zw/'.$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
echo '</div>';
echo '<div style="width:111px; height:111px; margin:23px; float:left;">';
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src='.images/thumb_fc/$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src='.images/thumb_zw/$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
echo '</div>';
}
;
}
?>
$sql_get_thumbs = "SELECT * FROM portfolio ORDER BY portfolio_ID DESC";
if (($result_get_thumbs = mysql_query($sql_get_thumbs)) === false)
{
echo showSQLError($sql_get_thumbs,mysql_error(),'Kan thumbs niet laten zien.');
}
elseif (mysql_num_rows($result_get_thumbs) == 0)
{
echo 'Geen thumbs gevonden!';
}
else
{
while ($row_thumbs = mysql_fetch_assoc($result_get_thumbs))
{
echo '<div style="width:111px; height:111px; margin:23px; float:left;">';
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src=images/thumb_fc/'.$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src=images/thumb_zw/'.$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
echo '</div>';
echo '<div style="width:111px; height:111px; margin:23px; float:left;">';
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src='.images/thumb_fc/$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src='.images/thumb_zw/$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
echo '</div>';
}
;
}
?>
alleen denk ik dat op lijn 37 de ';' weg moet.
Ik snap dus niet dat hij de variabele wel pakt bij de <img> en niet bij de onMouseOver/Out.
Dit is de html code:
<a href="voorbeeld.html"
onMouseOver="image0.src='images/thumbs_fc/dots_fc.gif';"
onMouseOut="image0.src='images/thumbs_zw/dots_zw.gif';">
<img name="image0" src="images/thumbs_zw/dots_zw.gif">
</a>
Zou het nog iets te maken kunnen hebben met de quotes?
Code (php)
images/thumb/ is GEEN deel van een variabele, maar van een string.
Maar dan zou dit toch wel moeten werken?
<php
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src=images/thumb_fc/'.$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src=images/thumb_zw/'.$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
?>
Of moeten er dan nog quotes tussen src= en images? Zo ja dan weet ik dus niet welke...
Toevoeging op 19/07/2012 19:50:34:
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src=images/thumb_fc/'.$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src=images/thumb_zw/'.$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
?>
echo '<a href="portfolio.php?portfolio_ID='.$row_thumbs['portfolio_ID'].'"';
echo 'onMouseOver="image0.src=images/thumb_fc/'.$row_thumbs['thumb_fc'].';"';
echo 'onMouseOut="image0.src=images/thumb_zw/'.$row_thumbs['thumb_zw'].';">';
echo '<img name="image0" src="images/thumb_zw/'.$row_thumbs['thumb_zw'].'">';
echo '</a>';
?>
Lotte leemreijze op 19/07/2012 19:50:11:
@ Erwin
Maar dan zou dit toch wel moeten werken?
Maar dan zou dit toch wel moeten werken?
Beste is gewoon om je source in de browser te bekijken, zie je direct of het helemaal correct staat (zelfs no beter om het in developer tools te bekijken als Firebug).
Erwin H op 19/07/2012 19:53:30:
Beste is gewoon om je source in de browser te bekijken, zie je direct of het helemaal correct staat (zelfs no beter om het in developer tools te bekijken als Firebug).
Lotte leemreijze op 19/07/2012 19:50:11:
@ Erwin
Maar dan zou dit toch wel moeten werken?
Maar dan zou dit toch wel moeten werken?
Beste is gewoon om je source in de browser te bekijken, zie je direct of het helemaal correct staat (zelfs no beter om het in developer tools te bekijken als Firebug).
Daar heb ik dus nog geen verstand van...
Toevoeging op 19/07/2012 20:16:43:
Iets wat me nu dus wel opviel ik heb de roll over ook nog een keer in de html gezet met een afbeelding en hij doet het dan dus ook niet.
Zodra ik uit de php name="image0" weghaal doet hij het in de html wel.
Zou er ergens misschien een conflict zitten met php?
Beter/makkelijker dan elke keer een echo '....'; etc.
Lotte leemreijze op 19/07/2012 20:14:26:
Daar heb ik dus nog geen verstand van...
Rechtsklikken met de muis in je browser scherm en selecteer 'View page source' (of iets soortgelijks in het Nederlands). Dan krijg je de kale HTML te zien waarin je dus kan zien hoe het er komt te staan, nadat php het geparsed heeft. Kijk daar eens of het er staat zoals je denkt dat het zou moeten.