Gå til innhold

Problemer med og sett tid inn i DB


Anbefalte innlegg

$time=gmdate('Y-m-d h:i:s');

mysql_query("UPDATE users SET status='Dead' WHERE username='$kill_username'");
mysql_query("UPDATE users SET status='Dead' WHERE username='$username'");
mysql_query("INSERT INTO `attempts` ( `username`, `target`, `outcome`, `date`) VALUES ( '$target->username', '$username', 'Dead', $time())");
mysql_query("INSERT INTO `attempts` ( `username`, `rank`, `date`) VALUES ( '$username', '$fetch->rank', $time())");
mysql_query("INSERT INTO `attempts` ( `username`, `rank`, `date`) VALUES ( '$target->username', '$target->rank', $time())");
mysql_query("DELETE FROM hitlist WHERE target='$target->username'");
mysql_query("DELETE FROM hitlist WHERE target='$username'");
echo "You Shot <a href='profile.php?viewuser=$kill_username'>$kill_username</a> And They Died, $kill_username Shot Back At You, You Died!";

 

screen shot av db

 

Tiden settes til 00-00-000 :/ noen som kan hjelpe meg med dette?

Endret av bapeape
Lenke til kommentar
Videoannonse
Annonse

echo date('U'); vil gi deg et tall på elleve siffer.

Seconds since the Unix Epoch (January 1 1970 00:00:00 GMT)
Om du bruker dette i hele mafiaspillet ditt, så vil du ha noe enkelt og fast å forholde deg til. (ihvertfall synes jeg det er enklere).

 

f.eks

echo 'Time of death: ' . date("d.m.Y", $target->date) . "\n";

vil da gi deg noe alá

Time of death: 24.12.07

 

For å bruke dette må du også modifisere databasen til å bruke int f.eks istedenfor datetime.

 

Det er det jeg ville gjort. Ikke sikkert det løser problemet ditt, men for meg ville det vært mer oversiktlig :)

Lenke til kommentar

mysql_query("UPDATE users SET status='Dead' WHERE username='$kill_username'");
mysql_query("UPDATE users SET status='Dead' WHERE username='$username'");
mysql_query("INSERT INTO `attempts` ( `username`, `target`, `outcome`, `date`) VALUES ( '$target->username', '$username', 'Dead', (now())'");
mysql_query("INSERT INTO `attempts` ( `username`, `rank`, `date`) VALUES ( '$username', '$fetch->rank', (now())'");
mysql_query("INSERT INTO `attempts` ( `username`, `rank`, `date`) VALUES ( '$target->username', '$target->rank', (now())'");
mysql_query("DELETE FROM hitlist WHERE target='$target->username'");
mysql_query("DELETE FROM hitlist WHERE target='$username'");
echo "You Shot <a href='profile.php?viewuser=$kill_username'>$kill_username</a> And They Died, $kill_username Shot Back At You, You Died!";

 

i databasen også til sql

 

--
-- Table structure for table `attempts`
--

CREATE TABLE `attempts` (
 `id` int(11) NOT NULL auto_increment,
 `username` varchar(40) NOT NULL default '',
 `target` varchar(40) NOT NULL default '',
 `outcome` enum('Dead','Survived') NOT NULL default 'Dead',
 `bullets` varchar(10) NOT NULL default '',
 `date` datetime NOT NULL default '0000-00-00 00:00:00',
 PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=305;

--
-- Dumping data for table `attempts`
--

 

Dette fungerer heller ikke :s

Lenke til kommentar

hvis datoen kommer ut fra feks. $rows->Tid

 

så kan du bruke "Date("Y:i:s", $rows->Tid);" i loopen din. ta en titt på Date(); på php.net =)

 

Ser også at du legger inn datoen med funksjonen Now(), er det en egen funksjon du har skrevet?

 

jeg bruker iværtfall "time();" for å printe unixtimestamp.

Endret av zandzpider
Lenke til kommentar

Dessuten er det lurt å bruke "DateTime" i mysql, da du kan bruke masse funksjoner relatert til dette feltet, Du kan også få mysql til å gi deg timestamp ut fra et DateTime felt.. husker ikke hvordan, men bruk google, så finner du det ut ;)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...