[MYSQL/PHP] Kommentar system fehler mit mysql?

thehacker

Anhänger der Apachen
Hallo,
ich mache gerade ein Profil Kommentar system und wollte paar sachen ausgeben lassen bis:
Code:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/web407/html/forum/profil.php on line 78

und der code nur:
PHP:
<?php
ob_start();
session_start();
include "./global.php";


$action = $_GET['act'];
$actions_array = array('forum','create','topic','reply','mod');
?>
<html>

	<head>
		<title>Willkommen @ forum.alenan.net</title>
		
		<link rel="stylesheet" type="text/css" href="./style.css">
		<script type="text/javascript" src="http://java.alenan.net/ckeditor/ckeditor.js"></script>
		<script language="Javascript">
			function confirmLogout(){
				var agree = confirm("Wirklich ausloggen?");
				
				if(agree){
					return true ;
				}else {
					return false ;
				}
			}
		</script>
	</head>
	
	<body>
	<center>
		<div id="holder">
			
			<div id="userInfo">
				<?php
				
					if($_SESSION['uid']){
						$sql = "SELECT * FROM `users` WHERE `id`='".$_SESSION['uid']."'";
						$res = mysql_query($sql) or die(mysql_error());
						
						if(mysql_num_rows($res) == 0){
							session_destroy();
							echo "Bitte <a href=\"./login.php\">Logge</a> dich ein, oder <a href=\"./register.php\">Registrire</a> dich!\n";
						}else {
							$row = mysql_fetch_assoc($res);
							echo "Willkommen, <a href=\"./profile.php?id=".$row['id']."\">".$row['username']."</a>! <a href=\"./logout.php\" onClick=\"return confirmLogout()\">Logout</a>\n";
							echo "<br>\n";
							echo "<a href=\"./index.php\">Forum Startseite</a>\n";
							if($row['admin'] == '1'){
								echo " | <a href=\"./admin.php\">Admin Login</a>\n";
							}
						}
					}else {
						echo "Bitte <a href=\"./login.php\">Logge</a> dich ein, oder <a href=\"./register.php\">Registrire</a> dich!\n";
					}
					
					$admin_user_level = $row['admin'];
				
				?>
			</div>
		
			<div id="content">
				<?php 
       			 // Verbindung aufbauen
        if( !mysql_connect("localhost", "root", "") )
              die(mysql_error()); 
        // Datenbank-Schema auswählen
        if( !mysql_select_db("usr_web407_2") ) 
              die(mysql_error()); 
        
        // User-Parameter vorbereiten und entschärfen 
        $id = $_GET['id']; 
        $id = intval($id); 
	//COmments 
 	$sql2 = mysql_query( "SELECT * FROM comments Where to_id = $id" );
        if( $sql2 ) {
              // Query war erfolgreich, jetzt alle Daten ausgeben
              while($row = mysql_fetch_array($sql)){
                     $from = $row['from_id'];
		     $from_name = $row['from_name'];
		     $nachricht = $row['nachricht'];

        // SQL-Query an die Datenbank senden
        $sql = mysql_query( "SELECT * FROM users Where id = $id" );
        if( $sql ) {
              // Query war erfolgreich, jetzt alle Daten ausgeben
              while($row = mysql_fetch_array($sql)){
                     $usr = $row['username'];
		     $admin = $row['admin'];
		     $ava = $row['avatar'];
		
		

		

			echo "<table>";
    			echo "<tr>";
				
				
      				echo "<td height='500px'><IMG src='$ava' width='200' height='500' align='left' border='1'></td>";
				echo "<td>Kommentare:";
				echo " <br>Von ".$from_name."";
				echo "Nachricht:".$nachricht."";
				echo "</td>";
				
				echo "<br>";
      				echo "<td>Benutzername: ".$usr."</td>";
    			echo "</tr>";
			echo "</table>";

	
}}}}
?>
			</div>
	
		</div>
	</center>
	</body>

</html>
<?php
ob_end_flush();
?>

Also das Problem genau ist das aus der DB Zu holen was den User gehört oder?

Vielen Dank,
TheHacker
 
Grüße,

dürfte an dem Abschnitt hier liegen:

PHP:
$sql2 = mysql_query( "SELECT * FROM comments Where to_id = $id" );
        if( $sql2 ) {
              // Query war erfolgreich, jetzt alle Daten ausgeben
              while($row = mysql_fetch_array($sql)){

Der Parameter für mysql_fetch_array ist 'sql', wobei vorher eine Ressource auf 'sql2 gelegt wurde....

Also einfach mal abändern:

PHP:
$sql2 = mysql_query( "SELECT * FROM comments Where to_id = $id" );
        if( $sql2 ) {
              // Query war erfolgreich, jetzt alle Daten ausgeben
              while($row = mysql_fetch_array($sql2)){

Hoffe es funktioniert.
 
Zurück