message system
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
beitrag
betreff
date
datei
ergebnis
error
fehler
formular
insert
limit
login
message
not
null
pawort
posteingang
result
sender
tabelle
username
-
1. Der Edit Button is grad nicht da!
Ich glaub es liegt an meiner Eingabe denn ich habe einfach das Script kopiert ohne was zu machen und als php gespeichert, ich glaub des war nicht so ganz richtig.
MfG,Felix -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Is des dann schon richtig wenn ich einfach eine Datei ertselle mit:
<?php
$verbindung = mysql_connect('localhost', '' , '')
or die('Verbindung zur Datenbank konnte nicht hergestellt werden');
mysql_select_db('Datenbank1
') or die ('Datenbank konnte nicht ausgew?hlt werden');
$username = $_POST['username'];
$passwort = md5($_POST['password']);
$abfrage = 'SELECT username, passwort FROM user WHERE username LIKE '$username' LIMIT 1';
$ergebnis = mysql_query($abfrage);
$row = mysql_fetch_object($ergebnis);
if($row->passwort == $passwort)
{
$_SESSION['username'] = $username;
echo 'Sie sind erfolgreich eingeloggt hier geht es Weiter <a href='index.php'>Weiter</a>';
}
else
{
echo 'Passwort oder Benutzter falsch';
}
?>
?>
-
Lasst uns mal mit der senden.php befassen
-
Das solten wir tun wenn mein Problem gel?st ist.
Du kannst mir nat?rlich auch einfach deine Daten schicken?!
MfG, Felix -
http://gollum1990.lima-city.de/Nachrichtensystem.txt
Beitrag ge?ndert am 20.03.2006 18:06 von gollum1990 -
Alles klar hier die senden.php
$fehler = array(); $message = $_POST["message"]; $sender = $_SESSION["user_username"]; $reciever = $_POST["reciever"]; $subject = $_POST["subject"]; $date = time(); $new = '1'; $sender_id = $_SESSION["user_id"]; //Speichern von Fehlermeldungen wenn message, //reciever oder betreff nicht angegeben wurde. if($message == "") $fehler[] ="Bitte geben Sie eine Message an."; if($reciever == "") $fehler[] ="Bitte geben Sie einen Empf?nger an."; if($subject == "") $fehler[] ="Bitte geben Sie einen Betreff an."; //wenn es keine fehler gibt in der DB speichern if (count($fehler) == 0) { $sql = "INSERT INTO pm (sender, reciever, message, subject, new_pm, date, sender_id) VALUES ('".$sender."', '".$reciever."', '".$message."', '".$subject."', '".$new."', '".$date."', '".$sender_id."')"; mysql_query($sql) OR die(mysql_error()); //beim erfolgreichen speichern zum posteingang echo '<meta http-equiv=\'refresh\' content=\'0; URL=post_in.php\'>'; } else{ //bei fehlern ausgabe der Fehler echo "<br><div style=\"font-size:10px;color:red;border:1px ridge red;width:50%;background-color:#dcdcdc;text-align:left;\"> Fehler:<ul>"; for ($i = 0; $i < count($fehler); $i++){ echo "<li>".$fehler[$i]."</li>"; } echo "</ul></div><br>"; } }
-
gollum1990 schrieb:
http://gollum1990.lima-city.de/nachrichtensystem.txt
Is ja nett nur gibts den Link nicht.
(Jetzt schon)
MfG, Felix
Beitrag ge?ndert am 20.03.2006 18:07 von felixbayer -
N groschreiben
-
Da ist ein Fehler drinne:
$abfrage = "$abfrage = "SELECT username, passwort FROM user WHERE username = '".$username."";
so ist es richtig:
$abfrage = "SELECT username, passwort FROM user WHERE username = '".$username."";
Beitrag ge?ndert am 20.03.2006 18:09 von newwarrior -
Der Posteingang m?sste irgenwie so aussehen:
<?
$abfrage = "SELECT message, user_username, reciever, subject FROM pm";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
{
echo $row->message, $row->user_username, $row->reciever, $row->subject;
}
?>
Oder ist das falsh?? -
Der Posteingang m?sste irgenwie so aussehen:
<?
$abfrage = "SELECT message, user_username, reciever, subject FROM pm";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
{
echo $row->message, $row->user_username, $row->reciever, $row->subject;
}
?>
Oder ist das falsh??
so l?sst du dir alle pm's ausgeben
$abfrage = "SELECT message, user_username, reciever, subject FROM pm";
besser w?re so:
$abfrage = "SELECT message, user_username, reciever, subject FROM pm WHERE reciever = "'.$_SESSION["username"].'"";
Beitrag ge?ndert am 20.03.2006 18:19 von newwarrior -
Also wie soll ich das jetzt verstehen
-
SO weit so gut, ich hab nur die Anmelde Form verschlafen, kann mir kurz jemand helfen?
MfG, Felix -
Das kannst du bestimmt selber aber hier mal
anmelde.html
<Kannst du selber>
anmelde.php
<?php
$verbindung = mysql_connect("localhost", "Benutzername" , "Passwort")
or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
mysql_select_db("homepage") or die ("Datenbank konnte nicht ausgew?hlt werden");
$username = $_POST["username"];
$passwort = $_POST["passwort"];
$passwort2 = $_POST["passwort2"];
if($passwort != $passwort2 OR $username == "" OR $passwort == "")
{
echo "Eingabefehler. Bitte alle Felder korekt ausf?llen. <a href=\"anmelde.html\">Zur?ck</a>";
exit;
}
$passwort = md5($passwort);
$result = mysql_query("SELECT id FROM login WHERE username LIKE '$username'");
$menge = mysql_num_rows($result);
if($menge == 0)
{
$eintrag = "INSERT INTO user (username, passwort) VALUES ('$username', '$passwort')";
$eintragen = mysql_query($eintrag);
if($eintragen == true)
{
echo "Benutzername <b>$username</b> wurde erstellt. <a href=\"login.html\">Login</a>";
}
else
{
echo "Fehler beim Speichern des Benutzernames. <a href=\"anmelde.html\">Zur?ck</a>";
}
}
else
{
echo "Benutzername schon vorhanden. <a href=\"anmelde.html\">Zur?ck</a>";
}
?> -
Wenn du das so machst wie du, gibst du alle PM'S aus die in der DB stehen. Aber du willst ja nur die Ausgeben, die wirklich f?r den User bestimmt sind.
Daher musst du eine WHERE Clause machen in der steht, das der reciver oder so ?nhlich also der empf?nger mit dem user ?ber einstimmen muss. -
Lnagsam nervtz mich dieser Fehler in login_check.php:
Parse error: parse error, unexpected T_STRING, expecting ',' or ';' in /home/webpages/lima-city/felixbayer/html/PN/login.php on line 37
-
mach mal in dem echos ' anstatt das "
-
Kleiner Erfolg jetzt sagt er mir das er die Datenbank nicht finden kann! Ein Erfolg!
-
Vielleicht w?rde ich mal die DATEN ?ndern manometer
localhost, dein Benutzername, deine Passwort
deine Datenbank wo du die Tabellen hast, wenn du es lokal testest w?rde ich mal MYSQL anmachen,
das kann doch nicht so schwer sein, kannst du kein PHP
Beitrag ge?ndert am 20.03.2006 18:55 von gollum1990 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage