Wert wird automatisch erhöht

Erks

Erfahrenes Mitglied
Hi,
gehen wir mal davon aus, dass mein Code wie folgt aussieht:

PHP:
<?php
require ('mysql.php');
mysql_query("INSERT INTO `erksspaceeintrag` VALUES ('$img','$name','$neu','$mess1','$mess2','$mess3',' ')");
?>

Wie schaffe ich es, dass der letzte Wert, der in die Datenbank übergeben wird, automatisch um den Wert 5 erhöht wird.

z.B.: Der Wert geht von der Zahl 100 (beim ersten Benutzer) aus und wenn sich ein zweiter Benutzer anmeldet wird die Zahl 100 automatisch zu einer 105. Um so gehts dann immer weiter. 3.Benutzer =110, 4.Benutzer=115 usw.

Danke für Hilfe
 
Glaube nicht das es mit MYSQL gehen sollte, viel einfacher wäre es doch vor dem Eintrag die Anzahl der eingetragenen User zu ermitteln und dann per PHP diese mit 5 zu multiplizieren, somit kannst du den Wert dann in den query einbauen.

mfg
 
Nach meinem Vorschlag ist es ja mehr PHP naja...

PHP:
$sql = "SELECT `id` FROM `erksspaceeintrag`;";    // Statement
$erg = mysql_query($sql);                                     // abschicken
$num = mysql_num_rows($erg);                            // Anzahl Einträge (User)

// Wenn neuer User eingetragen werden soll -- Abstand 5er
$wert = ($num*5)+5;                                             // num*5 = letzter userwert +5 -> neuer
mysql_query("INSERT INTO `erksspaceeintrag` VALUES ('$img','$name','$neu','$mess1','$mess2','$mess3','$wert')");   // speichern

So ungefähr ;-)
 
Nach meinem Vorschlag ist es ja mehr PHP naja...

PHP:
$sql = "SELECT `id` FROM `erksspaceeintrag`;";    // Statement
$erg = mysql_query($sql);                                     // abschicken
$num = mysql_num_rows($erg);                            // Anzahl Einträge (User)

// Wenn neuer User eingetragen werden soll -- Abstand 5er
$wert = ($num*5)+5;                                             // num*5 = letzter userwert +5 -> neuer
mysql_query("INSERT INTO `erksspaceeintrag` VALUES ('$img','$name','$neu','$mess1','$mess2','$mess3','$wert')");   // speichern

So ungefähr ;-)

mysql_num_rows gibt nur die anzahl der einträge in der Tabelle zurück.
Das impliziert aber nicht dass das gleich die max anzahl der ID in der DB ist.

Select max(id) AS maxid from ....
$erg = mysql_fetch_array...
ergebnis = $erg['maxid']+5;
 
Erstmal muss ich sagen das dein Vorschlag eleganter ist.
Dennoch sehe ich bei meinem Beispiel kein Fehler, angenommen es ist noch kein User in der Tabelle, dann ist $num = 0 und der erste User bekommt den Wert 5, beim zweiten User der eingetragen werden möchte ist ein Eintrag vorhanden $num = 1 ($wert = 1*5) und dieser wird um 5 incrementiert ergo 10. Vllt habe ich deine aussage falsch verstanden :)
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück