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

Fragen über Shoutbox, Formmailer und Seitenaufbau

Status
Für weitere Antworten geschlossen.

[xFx] TDK

Neues Mitglied
Hi,
also mein Seite vorweg xFx Clanpage - CS Source (jaja lange aubauzeit ich weiß :-D )
also
1) Wenn einer was in die Shoutbox schreibt, und dann die Seite aktualiesiert, wird die Nachricht ein zweites Mal geschrieben.
2) Kann ich in der Datenbank irgendwie die Nachrichten löschen wenn mehr als 15 drin sind. ich will die klein halten. hab in 2h schon 30 nachrichten drin -.-
3) kann ich beim Formmailer irgendwie die IP und den Provider speichern wenn einer was schickt (vllt mitschicken oder so) - da gibts so viele Spaßhaber die die gerne mal als Spam verwenden
4) wegen den langen aufbauzeiten dachte ich das nur das seiteninner neu geladen wird. der innenteil und links bzw. bilder bleiben gleich. wie soll ich das machen?

mfg
TDK
 
Zuletzt bearbeitet:
Werbung:
zu erstens weiß ich grad nix

zu 2:

Mit dem Befehl:
TRUNCATE TABLE `datenbank`, leerst du deine Tabelle.

Also z.B so:

Code:
$datenbank = "TRUNCATE TABLE `datenbank`";
$leeren = mysql_query($datenbank);

zu 3:
jope, das gehtund zwar mit PHP:
Mit der Variable $_SERVER['REMOTE_ADDR'] bekommst du die IP-Adresse.

zu 4:
benutz Frames?

hoff ich konnte helfen

gruß wolf360
 
zu 2:

Mit dem Befehl:
TRUNCATE TABLE `datenbank`, leerst du deine Tabelle.

Also z.B so:

Code:
$datenbank = "TRUNCATE TABLE `datenbank`";
$leeren = mysql_query($datenbank);

da löscht er ja die ganze tabelle. ich möchte aber das er nur die alteren löscht!

sonst danke! die anderen tipps kann ich gut gebrauchen!
mfg
TDK

Edit: Die IP dann so mitschicken?
<input type="hidden" name="betreff" value="Join-Us-Formmailer"$_SERVER['REMOTE_ADDR']" "/>
 
Zuletzt bearbeitet:
Werbung:
PHP:
// erstmal in shoutbox schreiben
mysql_query("INSERT INTO `bla` ....");

// dann die id auslesen
$loeschen = mysql_insert_id() - 15;

// dann löschen
mysql_query("DELETE FROM `bla` WHERE `sID` <=".$loeschen);

//Edit nein ip nicht mitsenden die empfängst du erst im empfängerscript also in deinem mysql_query

PHP:
mysql_query("INSERT INTO `bla` (`spalte1`, `spalte2`) VALUES ('dein text', '".$_SERVER['REMOTE_ADDR']."')");
 
noch mal zu erstens zurück, hast du da scho ne Lösung gefunden?

hab nämlich das selbe Problem... sobald man die Seite neu läd wird dein Eintrag wiederholt...-.-"

gruß wolf360
 
welterleitung nach speichern...
captcha...
prüfen ob der letzte beitrag den gleichen text hat wie der der eingefügt werden soll...

2 min überlegen und dann fallen einem so tolle sachen ein ^^
 
Werbung:
also das mit dem mysql löschen kapier ich nicht.
was ist da falsch:
if($txtMessage!="" && $txtNickname!=""){
$txtMessage=format_message($txtMessage);
$txtNickname=format_title($txtNickname);
mysql_query("INSERT INTO shoutbox (time, nick, txt) VALUES('".time()."', '$txtNickname', '$txtMessage')");
$loeschen = mysql_insert_id() - 15;
mysql_query("DELETE FROM shoutbox WHERE `sID` <=".$loeschen);
}

mfg
TDK

Edit:
Dann setz es doch um. Ist ja schließlich deine Seite und nicht unsere
Ich frag doch euch xD.
 
Werbung:
wenn du eine Mysql-Datenbank hast, musst du ein neues Feld hinzufügen, mit dem Namden id.

Den wert von Extra, setzt du auf Auto_increment und bei den vier Symbolen ganz am Schluss, setzt die Auswahl auf das erste Symbol(Das mit dem Schlüssel).

gruß wolf360
 
Werbung:
Hi,
also mein Seite vorweg xFx Clanpage - CS Source (jaja lange aubauzeit ich weiß :-D )
also
1) Wenn einer was in die Shoutbox schreibt, und dann die Seite aktualiesiert, wird die Nachricht ein zweites Mal geschrieben.

mfg
TDK

das wäre noch übrig.
wie kann ich das anstellen? 2 einträge vergleichen? wie geht das?
ach ja und kein captcha

weiß einer wo es ein tutorial gibt für newsscripts? ich möcht mir nämlich gern eins einbaun!
mfg
TDK
 
ich habe dir doch schon alles aufgeschrieben warum versuchst du nicht einfach mal dich selber zu informieren anstadt damit zu rechnen das wir die hier alles in arsch schieben...

einfach mal im mysql manual nachlesen kann doch nciht so schwer sein
 
Werbung:
ich habe dir doch schon alles aufgeschrieben warum versuchst du nicht einfach mal dich selber zu informieren anstadt damit zu rechnen das wir die hier alles in arsch schieben...

einfach mal im mysql manual nachlesen kann doch nciht so schwer sein

weil ich auch noch rl hab und nicht die ganze zeit im inet surf. und warum sollte ich hier nicht fragen dürfen wenn user es ohne nachzuschaun wissen?

Edit:
Probleme damit:

if($txtMessage!="" && $txtNickname!=""){
$txtMessage=format_message($txtMessage);
$txtNickname=format_title($txtNickname);
mysql_query("INSERT INTO shoutbox (time, nick, txt) VALUES('".time()."', '$txtNickname', '$txtMessage')");
$loeschen = mysql_insert_id() - 15;
mysql_query("DELETE FROM shoutbox WHERE `ID` <=".$loeschen);
$id1 = $txtMessage;
$id2 = mysql_fetch_assoc(mysql_query("SELECT * FROM `shoutbox` ORDER BY `ID` DESC LIMIT 0,1"));
$id2 = $id2['text'];
}

xxx

<?
if($id1 != $id2)
{
echo <<<html
<form name="frmMsgBox" method="POST" action="{$_SERVER['PHP_SELF']}">
<a style="color:#FFFFFF">Name: </a><br />
<input type="text" name="txtNickname" maxlength="16" value="<?=$txtNickname?>" >
<br>
<a style="color:#FFFFFF">Text: </a><br />
<input type="text" name="txtMessage" value="">
<!---<input type="text" name="txtMessage" maxlength="100" size="50">-->
<br>
<input type="submit" name="senden" value="Senden">
<font face="Arial, Helvetica, sans-serif"><a href="javascript:eek:pentip()"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Smiles</font></a></font>
</form>
HTML;
}
?>

findet da jemand einen Fehler?
mfg
TDK
 
Zuletzt bearbeitet:
Hallo! :D

Ich möchte nur schnell allgemein was loswerden, aber nicht böse gemeint. ;)

Es ist ja toll und gut, dass du Probleme hast und wir dir helfen möchten. Aber wenn du so mal die Situation anschaust: Wir sind nicht alle hier, um die fertigen Code zu geben, der funktioniert, aber nicht weisst, was der Code Zeile für Zeile bewirkt.

Und wir haben ja auch unsere Freizeit und surfen auch nicht nur im iNet herum :D

Also zurück zum Thema:
Ich habe mir mal dein Stück Code angesehen wo du Probleme hast.

Da hab ich folgende Fragen:
- Wo definierst du die Variablen $txtMessage und $txtNickname?
> Ich würde bei der Frage nicht if($bla == "") machen, sondern die Funktion empty() benutzen. Mehr: PHP: empty - Manual
- Bei der unteren If-Abfrage hast du:
PHP:
if($id1 != $id2)
{
   // weiterer Code
}
Solltest du hier nicht den negativen Vergleichsoperator benutzen?

Sprich:
PHP:
if($id1 !== $id2)
{
  // ^^
}
Das mal so von meiner Seite :D


LG ;)
 
das mit dem Doppelt eintragen hatte ich auch mal.

Bei mir lag es meistens daran, dass irgendein Teil des Scriptes den Eintrag geprüft hat und dabei den Eintrag schon eingetragen hat, ohne das ich dran gedacht habe, dann am Ende habe ich ihn nochmal eingetragen, weil ich dachte ich müsse noch.

Es liegt ganz oft an solchen dummen Sachen. Es trägt sich nichts von selbst ein.
Müsst ihr einfach mal nachschauen.
 
Werbung:
Status
Für weitere Antworten geschlossen.
Zurück
Oben