Seitenausgabe funktion will nicht funktionieren..

afkfurby

Grünschnabel
hallo zusammen, ich steh gerade total auf dem schlauch, es will einfach nicht funktionieren.

ich bekomm immer einen mysql fehler:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in .../modules/admincp.module.php on line 81
Zeile 81 ist die letzte while schleife

PHP:
$wa ="bezeichnung";
$we ="maschinen";
$gf =0;
$a =5;
$l ="admincp.module.php?a";
if(isset($_GET['p'])){ $a = $_GET['p']; }
listEntries($wa, $we, $gf, $a, $l);


#				username, users, getpage, max entries, index.php?admin=user_ov?admin=user_ov
function listEntries($what, $where, $getfrom, $amount, $link){
	if($getfrom != 0) {
		$from = ($getfrom - 1)*$amount;
		$active_page = $getfrom;
	}
	
	// Anzahl der Datensätze ermitteln
	$sql  = "SELECT COUNT(*) AS amount FROM ".$where.";";
	$result = mysql_query($sql);
	$row = mysql_fetch_assoc($result);
	
	// Anzahl der benötigten Seiten ermitteln
	$totalpages= $row["amount"];
	$pages = ceil( $totalpages/$amount );

	// Seitenauswahl ausgeben
	for($page = 1; $page <= $pages; $page++){
		if( $page != 1 ){ echo "|"; }
		if( $active_page == $page ){ echo "<b>$page</b>";}
		else{ echo "<a href='$link&p=$page' title='Seite: $page'>$page</a>"; }
	}  

	// Daten auslesen die zu der Seite gehören die der Benutzer sehen will
	$sql  = "SELECT * FROM ".$where." LIMIT ".$from.", ".$amount.";";
	
	// Seitenauswahl vornehmen
	$row2 = mysql_query( $sql );
		
	// Daten ausgeben
	while( $data = mysql_fetch_array($row2)){ echo $data["$what"]."<br />"; }

kann mir jemand helfen? is ziemlich sicher wieder nur so ein dummer fehler..

EDIT:
achja, diese funktion soll anhand der übergebenen variablen die datensätze aus der db holen, "auflisten" und die seitenzahlen ausgeben
 
Zuletzt bearbeitet:
Ändere mal folgendes:
PHP:
$row2 = mysql_query($sql);
In das hier:
PHP:
if(($row2 = mysql($sql)) === false)
    return;
Dadurch wird bewirkt, dass im Falle, dass die Abfrage fehlschlägt, sie an dieser Stelle endet. Somit kommt keine Fehlernachricht. Aber nun zu den Gründen, weshalb deine Anfrage fehlschlägt: hast du vorher schon eine Verbindung zur Datenbank aufgebaut? Erfolgreich?
 
ja hab ich, die seitenzahlen werden auch korrekt ausgegeben, nur die auflistung funktioniert nicht..
wenn ich das ganze nicht als funktion schreibe funktioniert auch alles wunderbar..
 
Dann versuch mal den Verbindungszeiger, also die Resource, welche du beim erfolgreichen Verbinden von mysql_connect() bekommst, der Funktion zu übergeben und dann innerhalb der Funktion an mysql_query() zu verwenden. Vielleicht löst das dein Problem.

Und poste mal bitte, was dir var_dump($sql) ausgibt.
 
Da die diese Art von Fragen sehr oft kommt, habe ich mal ein Tutorial geschrieben wie man am besten auf Fehlersuche geht.
PHP MySQL Debug Queries
Geh es doch mal durch und falls du die Lösung nicht findest, poste mal das ausgegebe SQL-Statement ins Forum.
 
danke, ich werde das ganze jetzt erst mal auf eis legen, da unsere IT mir angeben will wir könnten keinen MySQL server installieren, da wir schon einen MSSQL server haben...
Wir müssen jetzt erstmal schaun ob ich das ganze system umschreiben muss oder ob sie doch noch zur vernunft kommen..
 
Zurück