Avatar billede fancy Mester
29. april 2010 - 16:04 Der er 9 kommentarer og
1 løsning

Dato i databasen

Hej hvorfor for jeg ikke datoen sat ind i databasen
jeg har kaldt feltet INT i databasen.

<?php
include "connect.php";
$tid = $_GET['tid'];

$betaldato = time();
mysql_query("INSERT INTO tilmdb (betaldato) VALUES ('$betaldato') WHERE tid = " . $tid);
Avatar billede repox Seniormester
29. april 2010 - 16:11 #1
Hvad indeholder $_GET["tid"]?
Avatar billede dkfire Nybegynder
29. april 2010 - 19:12 #2
Hvad siger mysql_error() ?

Du kan ikke have en WHERE på en INSERT, eftersom at INSERT bruges til at oprette en ny række, ikke opdatere en række.
Avatar billede fancy Mester
29. april 2010 - 20:25 #3
ok skal jeg bruge UPDATE istedet ?
Avatar billede dkfire Nybegynder
29. april 2010 - 21:58 #4
Kommer an på om der allerede find en række med $tid i den tabel.
Avatar billede fancy Mester
30. april 2010 - 00:47 #5
Ok men jeg har løst problemet med en update det virker fint, men ved du hvordan jeg ungår at den skriver 0 i alle de tomme felter i db
Avatar billede dkfire Nybegynder
30. april 2010 - 12:32 #6
Ved at du udfylder alle felterne ??

Den eneste grund til at der står 0 i felterne er at du ikke har fortalt MySQL hvad den skal skrive i dem.

Er det fordi den opretter en ny række når du kører din update ?
Avatar billede fancy Mester
30. april 2010 - 17:03 #7
Jeg har fundet ud af det, eller det tror jeg da
jeg har lavet en update der hiver alle data ud, men har så tilføjet et felt mere i updaten , det er er måske ikke så genialt men det virker.

Og ang 0 erne kørete jeg en update som satte alle felterne = med ingen ting , så var de væk men hvor de kom fra ved jeg ikke

dkfire læg et svar

tak for interessen
Avatar billede dkfire Nybegynder
30. april 2010 - 17:58 #8
Der er lige et par ting jeg skal forstå:
"jeg har lavet en update der hiver alle data ud" ??
En update hiver intet ud af databasen, den opdatere de felter du vil have opdateret, ud fra de kriterier om du giver i WHERE delen.
Så hvad er det du lige gør ?

"Og ang 0 erne kørete jeg en update som satte alle felterne = med ingen ting , så var de væk men hvor de kom fra ved jeg ikke "
Ud fra hvad jeg lige kan læse, så opdatere din update ingen rækker, den laver en ny. Derved kommer der '0' i de felter du ikke opgiver som skal opdateres. Det lyder ikke helt som om du har helt styr på din database.

Hvis du vil have yderligere hjælp bliver du nød til at vise lidt mere kode, samt din database opbygning.
Avatar billede fancy Mester
01. maj 2010 - 08:55 #9
Når jeg kører min update lægger jeg alle data i en form, derved kan jeg rette dem, i denne form har jeg lavet et input felt mere hvor jeg så kan skrive dags dato.

include 'connect.php';
$tid = $_GET['tid'];
$result = mysql_query("UPDATE ****** SET tnavn='$tnavn', tadr='$tadr', tpnr='$tpnr', tby='$tby', ttel='$ttel', tmail='$tmail', betaldato='$dato' WHERE tid='$tid'")
or die(mysql_error());

hvor betaldato er det nye felt

jeg ved ikke hvor alle de 0 er kom fra men kan det skyldes at det var eksiterende database jeg oprettede feltet i

men for at fjerne kørete dette fra myadmin

UPDATE tilmdb SETbetaldato='' så var alle felter tomme
Avatar billede dkfire Nybegynder
09. maj 2010 - 17:24 #10
Ok, lyder som om du har fået løst dit problem.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester