Erhöhen einer Datei der Datenbank
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
auslese
berechnen
datenbank
datum
ergebnis
forum
halben jahr
header
inhalt
kategorie
klicken
leute
problem
set
spalte
stehen
string
update
wort
zeitpunkt
-
Tagschen Leute,
ich will, dass die Spalte "posts" der Datenbank bei dem User, der gerade einen Beitrag gemacht hat, um 1 erh?ht wird. Hier mein Script:
$ergebnis = mysql_query('SELECT * FROM `forum_users` WHERE `nick` = "'.$autor.'" ');
while($row = mysql_fetch_array($ergebnis))
{
$pw2 = $row['pw'];
$posts = $row['posts'];
$newposts = $posts++;
}
if ($pw1 == $pw2)
{
mysql_query (" INSERT INTO `forum_posts` (`autor` , `datum` , `zeit` , `kategorie` , `titel` , `inhalt`) VALUES ('$autor', '$datum', '$zeit', '$kategorie', '$titel', '$inhalt') ");
mysql_query (' UPDATE `forum_users` SET `posts` = "'.$newposts.'" WHERE `nick` = "'.$autor.'" ');
header ("Location: viewpost.php?titel=$titel");
}
Passieren tut allerdings nichts. Es kommt auch keine Fehlermeldung -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Wenn ich den Fehler richtig erkannt habe muss es hei?en:
if(mysql_query (" UPDATE forum_users SET posts = posts+1 WHERE nick = '$autor'")) { } -
Ne, eigentlich nicht, denn er liest erst die Post aus der Datenbank als $posts aus, und speichert dann den erh?hten Wert in $newposts
-
header ("Location: viewpost.php?titel=$titel");
Das funktioniert nicht, dazu bruacht man einen Link!
echo "<a href='viewpost.php?titel=$titel'>Hier klicken</a>";
-
Ich habe mich bereits verbessert so funzt das in meinem Forum dann brauchst du die posts-Anzahl garnicht erst auszulesen
-
Doch es funktinoiert
Das Einzige was nicht funktioniert, ist das erh?hen der Variable.
Also grunds?tzlich klappt alles, nur dass sich in der Datenbank bei den UserStatistiken nichts ?ndert -
Sry butzlumbejunky, zu dem Zeitpunkt war da noch 'n anderer Beitrag ^^
Naja, auf jedenfall DANKE, es funktioniert -
mysql_query (" INSERT INTO `forum_posts` (`autor` , `datum` , `zeit` , `kategorie` , `titel` , `inhalt`) VALUES ('$autor', '$datum', '$zeit', '$kategorie', '$titel', '$inhalt') ");
mysql_query (' UPDATE `forum_users` SET `posts` = "'.$newposts.'" WHERE `nick` = "'.$autor.'" ');
header ("Location: viewpost.php?titel=$titel");
Versuch das mal so:
$sql = "INSERT INTO forum_posts (autor,datum,zeit,kategorie,titel,inhalt) VALUES ('$autor','$datum', '$zeit', '$kategorie', '$titel', '$inhalt')";
$result = mysql_query($sql);
$sql2 = "UPDATE forum_users SET posts='$newposts' WHERE nick='$autor'";
$result2 = mysql_query($sql2);
//edit:
Sry, hab zu sp?te gesehen, dass das Problem bereits behoben wurde! -
ICh w?rde einfach die posts auslesen dann in php eine neu variable machen also so :
$neeeeewpost = $oldpost+"1"
und dann inne db schreiben!!! -
Die 1 darf nicht in Anf?rhrungszeichen stehen da sie sonst als Wort/String definiert ist und daswillst du ja net.
Sorry hab seit nem halben Jahr nicht mehr gecoded!!! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage