• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

PN-System

P

Prasedonym

Guest
hallo,
ich habe nun selber ein PN-System erstellt :)
nur leider funzt es nicht ich habe dies:

das ist die MySQL datenbanktabelle:
Code:
CREATE TABLE pns (
id INT NOT [URL="http://www.lima-city.de/tag/null"]NULL[/URL] [URL="http://www.lima-city.de/tag/auto"]AUTO[/URL]_INCREMENT PRIMARY KEY,
subject VARCHAR(80),
from_id INT,
from_user VARCHAR(50),
to_id INT,
to_user VARCHAR(50),
show from ENUM("yes","no"),
show_to ENUM("yes","no"),
text TEXT,
timestamp INT
)
dann habe ich dies:

Mail_out.php:
PHP:
<?php
include("includes/mysql_verbindung.php");
$result1 = mysql_query("SELECT * FROM pns WHERE from_id = $loginid ORDER BY timestamp"); // MySQL-Abfrage
$anzahl = mysql_num_rows($result1); // Zählen der Abgefragen Einträge
echo "Du hast $anzahl PN's versendet!"; // Ausgabe
while($row = mysql_fetch_array($result1)) { // Start: while-Schleife
$date = date("d.m.Y, h:i:s",$row[timestamp]); // Datum ermitteln
echo "<a href='show.php?id=$row[id]'>$row[subject]</a> (Zu: $row[to_user], Datum: $date)"; // Ausgabe
} // Ende: while-Schleife
?>

dann das zum anschauen der Daten:

show.php
PHP:
<?php
include("includes/mysql_verbindung.php"); // Einfügen der Datei "connect.php.inc"
?>

<?php
    $result1 = mysql_query("SELECT * FROM pns
                            WHERE id = $id AND to_id = $loginid ORDER BY timestamp LIMIT 1"); 
                            
    while($row = mysql_fetch_array($result1)) { // Start: while-Schleife
        $date = date("d.m.Y, h:i:s",$row[timestamp]); // Datum ermitteln
        echo "Von: $row[from_id] | Für: $row[to_id] | Datum: $date | Betreff: $row[subject]<br><br>$row[text]"; // Ausgeben des Textes
    } // Ende: while-Schleife
    echo "<a href='new_mail.php?to=$row[from_id]&subject=$row[subject]'>Antworten</a>";
?>

dann:

new_mail.php
PHP:
<?php
include("includes/mysql_verbindung.php"); // Einfügen der Datei "connect.php.inc"
?>

<?php
    $result1 = mysql_query("SELECT * FROM pns
                            WHERE id = $id AND to_id = $loginid ORDER BY timestamp LIMIT 1"); 
                            
    while($row = mysql_fetch_array($result1)) { // Start: while-Schleife
        $date = date("d.m.Y, h:i:s",$row[timestamp]); // Datum ermitteln
        echo "Von: $row[from_id] | Für: $row[to_id] | Datum: $date | Betreff: $row[subject]<br><br>$row[text]"; // Ausgeben des Textes
    } // Ende: while-Schleife
    echo "<a href='new_mail.php?to=$row[from_id]&subject=$row[subject]'>Antworten</a>";
?>


und das ist die verbindung zur MySQL db:

PHP:
<?php
// Datenbankverbindung aufbauen 
$connectionid = mysql_connect ("localhost", "root", ""); 
if (!mysql_select_db ("LoginSystem", $connectionid)) 
{ 
  die ("Keine Verbindung zur Datenbank"); 
} 
?>

Und nicht das zu vergessen:

mail_in.php
PHP:
<?php
include("includes/mysql_verbindung.php"); 
?>

<?php
    $result1 = mysql_query(
                            "SELECT * FROM pns 
                            WHERE to_id = $loginid ORDER BY timestamp" // MySQL abfrage
                            );
                            
     if ($anzahl = mysql_num_rows($result1) > 1); 
     {
        echo "Du hast" . $anzahl . "PN's!"; // Ausgeben, wieviele PN's man hat
        while($row = mysql_fetch_array($result1)) 
        {
            $date = date("d.m.Y, h:i:s",$row[timestamp]); // Datum ermitteln
            echo "<a href='show.php?id=$row[id]'>$row[subject]</a> (Von: $row[from_user], Datum: $date)"; // Ausgeben der Daten
        } // Ende: while-Schleife
     }
     else {
        echo "Du hast keine neuen Nachrichten!";
     }
    
?>



Vertseh einfach nicht warum das nicht geht!
ich brauche Hilfe kann sonst nicht weitermachen xD
 
Ach was, ich dachte, das sei ein Ratespiel, bei dem wir das alles herausfinden müssen :-)
 
mein fehler ist bei der show.php
tretet der Fehler auf

Warning
: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Documents and Settings\fabian\Desktop\HTML\reboox\battlewar\show.php on line 9

und bei allen anderen files dies:

Parse error: parse error in C:\Documents and Settings\fabian\Desktop\HTML\reboox\battlewar\mail_in.php on line 20

 
bei der show.php stimmt was mit dem sql-code was nicht, mach dochmal das LIMIT weg, hatte sowas auch bei mit lag am LIMIT und da du da sowieso nach einer ID abfragst und deine ID PK und AC ist kann nur ein oder garkein Ergebniss rauskommen.

Mal nooch so ne dummer Frage, sind Datensätze die deinem Abruff entsprechen in der DB?
 
danke hat geklappt!

hab jetzt nur noch den fehler

Mail_in.php
PHP:
<?php
include("includes/mysql_verbindung.php");
include ("checkuser.php"); 
?>

<?php
    $sql =     "SELECT * FROM pns WHERE " . 
            "to_user = '$_SESSION[user_nickname]'";
            
    $result1 = mysql_query($sql);
                              
    if ($anzahl = mysql_num_rows($result1) > 0); 
     {
        echo "Du hast" . $anzahl . " PN's!";
        while($data = mysql_fetch_array($result1)) 
        {
            
            echo "<a href='show.php?id=$data[id]'>$data[subject]</a> (Von: $data[from_user], Datum: $data[timestamp];)"; 
        } 
     }
     else 
     {
     echo "Du hast keine Neuen Nachrichten";
     }
    
?>

da gibt es immer beim else diesen Fehler aus
Parse error: parse error in C:\Documents and Settings\fabian\Desktop\HTML\reboox\battlewar\mail_in.php on line 21

das kann doch nicht sein oder?
 
Das bekannte programmierer semikola defizit :D ^^passiert mir sogar bei Mailsschreiben manchmal.

gucke dir mal deine if an

if ($anzahl = mysql_num_rows($result1) > 0);

fällt dir da was auf?^^
 
Ach du meine Scheisse!!!!!

Ist das ärgerlich wegen dem Scheiss(sorry für den Ausdruck) Semikolon so lange studiert

!ÄRGERLICH!
 
Zurück
Oben