[PHP/MySQL] Profile gibt nur ersten eintrag aus?

thehacker

Anhänger der Apachen
Hallo,
ich habe ein kleines Problem:
ich habe 2 Benutzer und beide haben überall das Gleiche, aber wenn ich die profil.php?id=2 eingebe kommt nix also ne leere seite bis auf den style aber bei ?id=1 gibt es alles so aus wie es sein soll?

Wo ist der Fehler?
Fehler 1 ist erst mal bei report all:
Code:
Notice: Undefined index: act in /var/www/web407/html/forum/profil.php on line 9

So sonst kamm nix:
PHP:
<?php
error_reporting(E_ALL); 
ini_set('display_errors', 1);
ob_start();
session_start();
include "./global.php";


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

$id = $_GET['id']; 
?>
<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";
					}
					
				
				?>
			</div>
		
			<div id="content">
				<?php 
       			 // Verbindung aufbauen
        if( !mysql_connect("localhost", "root", "rootPW") )
              die(mysql_error()); 
        // Datenbank-Schema auswählen
        if( !mysql_select_db("usr_web407_2") ) 
              die(mysql_error()); 
        
        // User-Parameter vorbereiten und entschärfen 
        
        $id = intval($id); 
	//COmments 
 	$sql2 = mysql_query( "SELECT * FROM comments Where to_id = $id" ); 
        if( $sql2 ) { 
              // Query war erfolgreich, jetzt alle Daten ausgeben 
              while($row2 = mysql_fetch_array($sql2)){  
                     $from = $row2['from_id'];
		     $from_name = $row2['from_name'];
		     $nachricht = $row2['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='300' align='left' border='1'><br>Benutzername: ".$usr."</td>";
				echo "<td>Kommentare:";
				echo " <br>Von ".$from_name."";
				echo "Nachricht:".$nachricht."";
				echo "</td>";
    			echo "</tr>";
			echo "</table>";

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

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

Hoffe mit der sicherheit ist es auch ok :D


Danke für Tipps gibt auch ein Danke :D
 
Die Fehlermeldung kommt wahrscheinlich daher weil du in deiner URL den Parameter "act" nicht hast.
Willst sie aber hier auslesen.

$action = $_GET['act'];

Genau das gleiche mit der ID...
 
Und du bist dir sicher das es einen Eintrag mit der ID 1 gibt? Weil sonst kann ich mir das auch nicht erkären
 
nein aber fast mit den gleichen aber er gibt noch nicht mal die fixe höhe der Tabele an sondern einfach garnix
 
Dann leg doch einfach mal einen Datensatz an der exakt dem, mit der ID 1 gleicht. Wenn er dann dieses Datensatz ausspuckt dann weißt du das es an den Rechten liegt ;) .
 
1. ENtschuldigung das ich mich erst jetzt melde aber

es klapp imme rnoch nicht alle datensätze sind gleich?
 
Zurück