Avatar billede kattendk Nybegynder
22. juni 2006 - 03:11 Der er 14 kommentarer og
1 løsning

Finde ID lige efter den er sendt til mysql?

<?php include("tjek_logind.php"); ?> <?php include("denner.php"); ?>

<?
$dato = date("d-m-Y H:i", time());
$conn = mysql_connect("$host","$user","$pass");
mysql_select_db("$db",$conn);

mysql_query("INSERT INTO `news` (`ur` , `navn` , `brugernavn` , `mail` , `overskrift` , `tekst` , `end` , `signatur` )
VALUES ('$dato', '$_POST[navn]' , '$_POST[brugernavn]' , '$_POST[mail]' , '$_POST[overskrift]', '$_POST[tekst]', '$_POST[end]', '$_POST[signatur]' )") OR DIE (mysql_error());
mysql_query("INSERT INTO `kommentar` (`id2` , `ip` , `ur` , `navn` , `mail` , `hp` , `tekst`)
VALUES ('$_get["id"]', 'SERVER IP.', '$dato', '$home', 'NoMail@$home', '$home', 'Vær venlig at kommenterer til denne nyhed (:<br><br>Med venlig hilsen,<br>$home')") OR DIE (mysql_error());

mysql_close;
?>
<? include 'forside.php'; ?>

------------------------------

Sådan ser mit script ud, og jeg vil gerne have hver gang der bliver oprettet en nyhed, så kommer der automatisk en kommentar til nyheden. Problemet ligger at jeg ikke kan få det til fungere.

Den vil godt skrive det hele i mysql, men jeg ved ikke hvordan jeg finder ID til nyheden lige efter den er sendt til mysql. Kan man overhovedet det? Hvis det er muligt, hvordan gør man så? Ellers hvis der er andre muligheder, hører jeg gerne :)
Avatar billede iss Novice
22. juni 2006 - 03:21 #1
php.net/mysql_insert_id
Avatar billede arne_v Ekspert
22. juni 2006 - 03:21 #2
mysql_insert_id() giver dig sidste genererede id
Avatar billede xtr0 Nybegynder
22. juni 2006 - 03:29 #3
Der er gang i svarene, to på 15 sekunder :)
Avatar billede kattendk Nybegynder
22. juni 2006 - 12:50 #4
Tak for hjælpen, den vil jeg kigge lidt på. Smider i 2 svar?
Avatar billede kattendk Nybegynder
22. juni 2006 - 13:05 #5
<?php include("tjek_logind.php"); ?> <?php include("denner.php"); ?>

<?
$dato = date("d-m-Y H:i", time());
$conn = mysql_connect("$host","$user","$pass");
mysql_select_db("$db",$conn);

mysql_query("INSERT INTO `news` (`ur` , `navn` , `brugernavn` , `mail` , `overskrift` , `tekst` , `end` , `signatur` )
VALUES ('$dato', '$_POST[navn]' , '$_POST[brugernavn]' , '$_POST[mail]' , '$_POST[overskrift]', '$_POST[tekst]', '$_POST[end]', '$_POST[signatur]' )") OR DIE (mysql_error());
$id = "mysql_insert_id()";
mysql_query("INSERT INTO `kommentar` (`id2` , `ip` , `ur` , `navn` , `mail` , `hp` , `tekst`)
VALUES ('$id', '$home IP.', '$dato', '$home', 'NoMail@$home', '$home', 'Vær venlig at kommenterer til denne nyhed (:<br><br>Med venlig hilsen,<br>$home')") OR DIE (mysql_error());

mysql_close;
?>

<? include 'forside.php'; ?>

Hvorfor virker den ikke? :|
Avatar billede iss Novice
22. juni 2006 - 13:07 #6
Fordi du mener $id = mysql_insert_id();
Avatar billede kattendk Nybegynder
22. juni 2006 - 13:13 #7
hmm, hvordan skulle man ellers haft lavet den. For jeg er helt ny i php.. :|
Avatar billede arne_v Ekspert
22. juni 2006 - 13:26 #8
han siger at du skal fjerne de "" i:

$id = "mysql_insert_id()";
Avatar billede iss Novice
22. juni 2006 - 13:28 #9
$id = mysql_insert_id(); sætter den lig hvad mysql_insert_id() smider tilbage, hvor $id = "mysql_insert_id()"; sætter det lig strengen "mysql_insert_id()", og som efter det ikke er det sidst du vil have, så er det nok det første du vil have...
Avatar billede kattendk Nybegynder
22. juni 2006 - 13:32 #10
Tak nu virker det! :)
Smider i svar, eller hvordan gør man når 2 skal have 100 point?
Avatar billede iss Novice
22. juni 2006 - 13:34 #11
Behold du bare dine point...
Avatar billede kattendk Nybegynder
22. juni 2006 - 13:38 #12
I skal da ikke snyes, men tak.
Avatar billede iss Novice
22. juni 2006 - 13:51 #13
Jeg ved ikke med Arne... spørg ham...
Avatar billede arne_v Ekspert
22. juni 2006 - 14:06 #14
iss var jo først - men jeg samler jo på point ...
Avatar billede arne_v Ekspert
22. juni 2006 - 14:06 #15
så et svar anyway
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