Mysql_num_rows geeft fout
Coolbean - 07/03/2006 20:51 (laatste wijziging 08/03/2006 14:50)
Nieuw lid
ik heb nu geprobeerd om zo een album te maken waardoor je door de afbeeldingen kan browsen, maar hij geeft 3 errors
kan iemand mij helpen, het zit ergens tussen regel 16 en 36.
dit is de voornaamste fout:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\screenshots\index.php on line 50
maar die num_rows functie begrijp ik ook niet echt
<body bgcolor="#000000" text="#FF0000">
<?php
$rootdir="../";
$section="Screenshots";
include($rootdir."opmaak/header.inc.php");
include($rootdir."opmaak/navigation.inc.php");
$db = mysql_connect("localhost", "easyscripts", "banana") or die ("verbinding mislukt");
mysql_select_db("easyc",$db);
$afbeelding_SQL="SELECT * FROM afbeeldingen ORDER BY afbeelding_naam";
$afbeelding_result=mysql_query($afbeelding_SQL) OR DIE(mysql_error());
$afbeelding=mysql_fetch_array($afbeelding_result);
mysql_close();
if(isset($_GET['pos'])==0){
$pos=0;
}else{
$pos=(int)$_GET['pos'];
}
$count=1;
$no_data=mysql_num_rows(mysql_query("SELECT afbeelding_ID FROM afbeeldingen"));
$new_pos_next=$pos+$count;
if($new_pos_next>=$no_data){
$link_next="Volgende >>";
}else {
$link_next="<a href=index.php?pos=" . $new_pos_next . ">Volgende >></a>";
}
$new_pos_prev=$pos-$count;
if($new_pos_prev<0){
$link_prev="<< Vorige";
} else {
$link_prev="<a href=index.php?pos=" . $new_pos_prev . "><< Vorige</a>";
}
?>
<p align="center">
<table width="400">
<tr>
<td valign="center"><b><u><p align="center">Screenshots</p></u></b></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><p align="center"><img src="<?php echo $afbeelding['afbeelding_url'] ?>" alt="<?php echo $afbeelding['afbeelding_naam'] ?>"></p></td>
</tr>
<tr>
<td><p align="center"><?php echo $link_prev . " " . $link_next ?></p></td>
</tr>
</table>
</p>
</body>
<body bgcolor="#000000" text="#FF0000">
<?php
$rootdir = "../" ;
$section = "Screenshots" ;
include ( $rootdir . "opmaak/header.inc.php" ) ;
include ( $rootdir . "opmaak/navigation.inc.php" ) ;
$db = mysql_connect ( "localhost" , "easyscripts" , "banana" ) or
die ( "verbinding mislukt" ) ; $afbeelding_SQL = "SELECT * FROM afbeeldingen ORDER BY afbeelding_naam" ;
if ( isset ( $_GET [ 'pos' ] ) == 0 ) { $pos = 0 ;
} else {
$pos = ( int) $_GET [ 'pos' ] ;
}
$count = 1 ;
$new_pos_next = $pos + $count ;
if ( $new_pos_next >= $no_data ) {
$link_next = "Volgende >>" ;
} else {
$link_next = "<a href=index.php?pos=" . $new_pos_next . ">Volgende >></a>" ;
}
$new_pos_prev = $pos - $count ;
if ( $new_pos_prev < 0 ) {
$link_prev = "<< Vorige" ;
} else {
$link_prev = "<a href=index.php?pos=" . $new_pos_prev . "><< Vorige</a>" ;
}
?>
<p align="center">
<table width="400">
<tr>
<td valign="center"><b><u><p align="center">Screenshots</p></u></b></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><p align="center"><img src="
<?php echo $afbeelding [ 'afbeelding_url' ] ?> " alt="
<?php echo $afbeelding [ 'afbeelding_naam' ] ?> "></p></td>
</tr>
<tr>
<td><p align="center">
<?php echo $link_prev . " " . $link_next ?> </p></td>
</tr>
</table>
</p>
</body>
8 antwoorden
Gesponsorde links
ikkedikke - 07/03/2006 21:03
PHP expert
$afbeelding_result=mysql_query($afbeelding_SQL) OR DIE(mysql_error());
Coolbean - 07/03/2006 21:10 (laatste wijziging 07/03/2006 21:20)
Nieuw lid
Ooh, ik heb men fout al,
maar kan het wel zoals ik doe met die url, want het klopt niet echt...
edit :heb fout al, gewoon " vergeten...
nu moet ik alleen nog een manier vinden om als ik op volgende klik dat het de volgende afbeelding laat zien...
timo - 07/03/2006 21:25
PHP ver gevorderde
order het bij afbeeldingid een auto_increment veld en haal dat via $_GET['afbid'] op en doe dan dat ++ en dan door... bestaat er een auto increment veld? dan geef k je wel een code
Coolbean - 07/03/2006 21:32
Nieuw lid
ja,
Afbeelding_ID is al auto_increment.
timo - 07/03/2006 21:36
PHP ver gevorderde
geef ff al je rijen... want uit die code van jou word ik niet wijs, moet er 1 per keer worden weergeven?
Coolbean - 07/03/2006 21:37
Nieuw lid
ja per 1 keer,
ik heb maar 3 rijen:
-afbeelding_ID - auto increment (int)
-afbeelding_naam
-afbeeding_url
timo - 07/03/2006 21:44
PHP ver gevorderde
probeer dit eens:
<body bgcolor="#000000" text="#FF0000">
<?php
error_reporting(E_ALL);
$afbid = $_GET['afbid'];
$rootdir="../";
$section="Screenshots";
include($rootdir."opmaak/header.inc.php");
include($rootdir."opmaak/navigation.inc.php");
$db = mysql_connect("localhost", "easyscripts", "scooby") OR die("verbinding mislukt. MySQL retouneerde: ".mysql_error());
mysql_select_db("easyc",$db);
$afbeelding_SQL="SELECT * FROM afbeeldingen WHERE afbeelding_ID='".$afbid."' ORDER BY afbeelding_ID";
$afbeelding_result = mysql_query($afbeelding_SQL) OR die(mysql_error());
$afbeelding=mysql_fetch_array($afbeelding_result);
$no_data=mysql_num_rows(mysql_query("SELECT afbeelding_ID FROM afbeeldingen"));
$link_prev = '<a href="?afbid='.--$afbid.'">Vorige</a>';
$link_next = '<a href="?afbid='.++$afbid.'">Volgende</a>';
?>
<p align="center">
<table width="400">
<tr>
<td valign="center"><b><u><p align="center">Screenshots</p></u></b></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><p align="center"><img src="<?php echo $afbeelding['afbeelding_url'] ?>" alt="<?php echo $afbeelding['afbeelding_naam'] ?>"></p></td>
</tr>
<tr>
<td><p align="center"><?php echo $link_prev . " " . $link_next ?></p></td>
</tr>
</table>
</p>
</body>
<body bgcolor="#000000" text="#FF0000">
<?php
$afbid = $_GET [ 'afbid' ] ;
$rootdir = "../" ;
$section = "Screenshots" ;
include ( $rootdir . "opmaak/header.inc.php" ) ;
include ( $rootdir . "opmaak/navigation.inc.php" ) ;
$afbeelding_SQL = "SELECT * FROM afbeeldingen WHERE afbeelding_ID='" . $afbid . "' ORDER BY afbeelding_ID" ;
$link_prev = '<a href="?afbid=' .-- $afbid . '">Vorige</a>' ;
$link_next = '<a href="?afbid=' .++ $afbid . '">Volgende</a>' ;
?>
<p align="center">
<table width="400">
<tr>
<td valign="center"><b><u><p align="center">Screenshots</p></u></b></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><p align="center"><img src="
<?php echo $afbeelding [ 'afbeelding_url' ] ?> " alt="
<?php echo $afbeelding [ 'afbeelding_naam' ] ?> "></p></td>
</tr>
<tr>
<td><p align="center">
<?php echo $link_prev . " " . $link_next ?> </p></td>
</tr>
</table>
</p>
</body>
heb allemaal stukjes die volgens mij nergens op slaan eruit geknipt...
Coolbean - 08/03/2006 14:52 (laatste wijziging 08/03/2006 15:35)
Nieuw lid
ik ben nu terug bezig op de manier van het boek
en ik heb tot nu toe dit:
<body bgcolor="#000000" text="#FF0000">
<?php
$rootdir="../";
$section="Screenshots";
include($rootdir."opmaak/header.inc.php");
include($rootdir."opmaak/navigation.inc.php");
$db = mysql_connect("localhost", "easyscripts", "banana") or die ("verbinding mislukt");
mysql_select_db("easyc",$db);
if(isset($_GET['pos'])==0){
$pos=0;
}else{
$pos=(int)$_GET['pos'];
}
$count=1;
$afbeelding_SQL="SELECT * FROM afbeeldingen ORDER BY afbeelding_naam DESC LIMIT $pos,$count";
$afbeelding_result=mysql_query($afbeelding_SQL);
$no_data=mysql_num_rows(mysql_query("SELECT afbeelding_ID FROM afbeeldingen"));
$new_pos_next=$pos+$count;
if($new_pos_next>=$no_data){
$link_next="Volgende >>";
}else {
$link_next="<a href=index.php?pos=" . $new_pos_next . ">Volgende >></a>";
}
$new_pos_prev=$pos-$count;
if($new_pos_prev<0){
$link_prev="<< Vorige";
} else {
$link_prev="<a href=index.php?pos=" . $new_pos_prev . "><< Vorige</a>";
}
while($afbeelding=mysql_fetch_array($afbeelding_result)){
?>
<p align="center">
<table width="400">
<tr>
<td valign="center"><b><p align="center">Screenshots</p></b></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><p align="center"><img src="<?php echo $afbeelding['afbeelding_url'] ?>" alt="<?php echo $afbeelding['afbeelding_naam'] ?>"></p></td>
</tr>
<tr>
<td><p align="center"><?php echo $link_prev . " " . $link_next ?></p></td>
</tr>
</table>
</p>
<?php
}
?>
</body>
<body bgcolor="#000000" text="#FF0000">
<?php
$rootdir = "../" ;
$section = "Screenshots" ;
include ( $rootdir . "opmaak/header.inc.php" ) ;
include ( $rootdir . "opmaak/navigation.inc.php" ) ;
$db = mysql_connect ( "localhost" , "easyscripts" , "banana" ) or
die ( "verbinding mislukt" ) ;
if ( isset ( $_GET [ 'pos' ] ) == 0 ) { $pos = 0 ;
} else {
$pos = ( int) $_GET [ 'pos' ] ;
}
$count = 1 ;
$afbeelding_SQL = "SELECT * FROM afbeeldingen ORDER BY afbeelding_naam DESC LIMIT $pos ,$count " ;
$new_pos_next = $pos + $count ;
if ( $new_pos_next >= $no_data ) {
$link_next = "Volgende >>" ;
} else {
$link_next = "<a href=index.php?pos=" . $new_pos_next . ">Volgende >></a>" ;
}
$new_pos_prev = $pos - $count ;
if ( $new_pos_prev < 0 ) {
$link_prev = "<< Vorige" ;
} else {
$link_prev = "<a href=index.php?pos=" . $new_pos_prev . "><< Vorige</a>" ;
}
?>
<p align="center">
<table width="400">
<tr>
<td valign="center"><b><p align="center">Screenshots</p></b></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><p align="center"><img src="
<?php echo $afbeelding [ 'afbeelding_url' ] ?> " alt="
<?php echo $afbeelding [ 'afbeelding_naam' ] ?> "></p></td>
</tr>
<tr>
<td><p align="center">
<?php echo $link_prev . " " . $link_next ?> </p></td>
</tr>
</table>
</p>
<?php
}
?>
</body>
Probleem opgelost,
Bedankt voor de moeite
Gesponsorde links
Dit onderwerp is gesloten .