[PHP & MySQL] Altern funktioniert nicht

Startpost-Retter
Huhu smile
Ich bräuchte mal wieder Hilfe mit dem stinkenden PHP Krams ;D

Und zwar möchte ich die Pferde jeden Monat um ein Jahr altern lassen, habe das Skript erstellt und lasse dieses eben jeden Monat aufrufen. Habe es gerade zum Test aufgerufen und gesehen, dass sich am Alter nichts geändert hat. Wäre lieb, wenn sich den Code mal jemand anschauen könnte :>

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
<?php
$sqlhost "localhost";
$sqluser "X";
$sqlpassword "X";
$sqldb "rosemont";
mysql_connect($sqlhost,$sqluser,$sqlpassword) or die ("Kann nicht verbinden, check das Passwort!"); mysql_select_db($sqldb) or die ("Sicher dass die Datenbanksache stimmt?");

$sql "SELECT * FROM pferde";
$result mysql_query($sql) OR die(mysql_error());
while ($row=mysql_fetch_assoc($result) ) {
$id $row['id'];
$geburtstag $row['geburtstag'];
$geburtstag '1';
$sql "UPDATE pferde SET geburtstag = '$geburtstag' WHERE id='$id'";
mysql_query($sql);
}
?>
stogadis
wie ist geburtstag denn aufgebaut? eine reine zahl oder steht da sowas wie "5 jahre"
stogadis
hm oke XP

vll eher WHERE id == '$id' aber ist auch nur ne vermutung ^^ ich seh jetz so auf anhieb keinen fehler
Jessie
Bei mir hats nicht funktioniert als das Geburtsdatum 'alter' hieß, habs dann in 'geburt' geändert und das ging, vllt liegst bei dir auch daran, versuch doch mal zu ändern.
1Sm!le
Zitat:
Original von ANGEL_05
Also, wie es bei mir funktioniert (weil MySQL auch so ne Zählfunktion hat) ist so:
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
<?php
$sqlhost "XXX";
$sqluser "XXX";
$sqlpassword "XXX";
$sqldb "XXX";
mysql_connect($sqlhost,$sqluser,$sqlpassword) or die ("Kann nicht verbinden, check das Passwort!"); mysql_select_db($sqldb) or die ("Sicher dass die Datenbanksache stimmt?");

$sql "UPDATE pferde SET geburtstag = geburtstag + 1";
mysql_query($sql);

?>


Wenn das Alter eine Zahl (int) ist, und nur das Alter in Jahren beinhaltet, ist das hier die sauberste, schnellste Lösung.
Ihr alle habt aber
code:
1:
mysql_close();

ignoriert. Das ist nicht sehr empfehlenswert, weil solltet ihr mal viele Benutzer zugleich haben, kann das die Datenbank schon unnötig belasten.
1Sm!le
Je nachdem wie die Seite aufgebaut ist, aber nicht immer so schnell, wie man es haben könnte, wenn man drauf achtet.
Klar, 1000000 Connections entstehen so nicht.
Black Katrin
wieso funktioniert das wenn die spalte alter heisst? wudnert mich grad
Black Katrin
Zitat:
Original von Mordred
Zitat:
Original von Black Katrin
wieso funktioniert das wenn die spalte alter heisst? wudnert mich grad


Dafür sind die Backticks da


wie was?
Black Katrin
Zitat:
Original von BlackTear
Zitat:
Original von Black Katrin
wieso funktioniert das wenn die spalte alter heisst? wudnert mich grad


Tut es ja außerdem nicht Augenzwinkern Mordred hat den Code vom 1. Beitrag genommen & geändert. Weiter in der Mitte des Themas steht, dass ich "alter" auf "jahre" geändert hab.



Freude ok... dachte schon bin total veraltet... damit hab ich nämlich jedesmal wenn ich wieder mit coden anfange erst n heiden stress Freude
Black Katrin
ah.. ok ich versuchs mir zu merken für die zukunft Freude betonung liegt glaubs bei versuchen, nti bei merken lol