Avatar billede subcenx Nybegynder
18. september 2001 - 19:57 Der er 26 kommentarer og
1 løsning

Vis ID ?

Hvordan for jeg fat ID nummeret fra en database (MySQL) når jeg lige har tilføjet noget ??

Det vil sige hvis jeg nu til føjer noget i databasen hvordan kan jeg så få fat i det ID som jeg lige har tilføjet ????

Og hvordan for jeg det vist på siden ???
Avatar billede milpoer Nybegynder
18. september 2001 - 20:02 #1
Prøv at kigger her.. det tror jeg det hjælper.

www.php.net/mysql_insert_id

http://www.eksperten.dk/spm/110388
Avatar billede subcenx Nybegynder
18. september 2001 - 20:04 #2
det viser ikke hvordan man gør skal man bruge echo det er kode jeg vil se....
Avatar billede cyberdude Nybegynder
18. september 2001 - 20:08 #3
<?
...... din database indsættelse her.......

$mit_nye_id = mysql_insert_id();

echo \"$mit_nye_id\";

?>

sådant så har du id\'et ude hvor du kan se det!
Avatar billede subcenx Nybegynder
18. september 2001 - 20:17 #4
den virker ikke...jeg får ikke noget tal ?
Avatar billede subcenx Nybegynder
18. september 2001 - 20:24 #5
her kan i se den tabel jeg bruger:

CREATE TABLE books (
id int(10) unsigned DEFAULT \'0\' NOT NULL auto_increment,
titel varchar(200),
forfatter varchar(200),
isbn varchar(200),
billedlink varchar(200),
omtale longtext NOT NULL,
PRIMARY KEY (id)
)

Og lige under min INSERT har jeg sat:

$mit_nye_id = mysql_insert_id();

echo \"$mit_nye_id\";
Avatar billede cyberdude Nybegynder
18. september 2001 - 21:55 #6
gider du ikke lige at poste hele det script der indsætter dataene i databasen.....?
Avatar billede subcenx Nybegynder
18. september 2001 - 22:23 #7
Jo... Det er

mysql_query(\"INSERT INTO kommentarer (navn, username, kat, kom) VALUES (\'$brugernavn2\', \'$brugernavn\', \'$kate\', \'$kommentar\')\");
Avatar billede cyberdude Nybegynder
18. september 2001 - 22:59 #8
<?

mysql_query(\"INSERT INTO kommentarer (navn, username, kat, kom) VALUES (\'$brugernavn2\', \'$brugernavn\', \'$kate\', \'$kommentar\')\");
$mommentar_id = mysql_insert_id();

echo \"Du har fået tildelt id nr. $kommentar_id\";
?>

Dette bruger jeg selv når brugeren skal have et id at arbejde vidre med når han/hun opretter noget på min side, og det har aldrig fejlet............
Avatar billede myplacedk Nybegynder
18. september 2001 - 23:02 #9
Hvad giver dette?

mysql_query(...);
var_dump(mysql_insert_id());
Avatar billede subcenx Nybegynder
18. september 2001 - 23:04 #10
Hmm det virker ikke....kan det have noget med headeren at gøre ???

<?

if ($skriv){

header(\"location: $PHP_SELF?aid=$aid\");


}

?>
Avatar billede subcenx Nybegynder
18. september 2001 - 23:04 #11
> myplacedk

Hvad skal jeg gøre med din ??????
Avatar billede subcenx Nybegynder
18. september 2001 - 23:17 #12
> Myplacedk .... forstod godt hvad du mente den giver denne:

int(0)

??????????
Avatar billede cyberdude Nybegynder
18. september 2001 - 23:39 #13
kan du ikke poste hele den side hvorpå denne insert kode er på..... det kan godt have noget med den header locatoin at gøre....... alt afhengig af hvilken side der er du vil se dit nye id på.....?
Avatar billede subcenx Nybegynder
18. september 2001 - 23:44 #14
<? if ($skriv){

header(\"location: $PHP_SELF?aid=$aid\");


}

?><!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
<html>
<head>
<meta http-equiv=\"Content-Language\" content=\"da\">
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1252\">
<LINK REL=\"SHORTCUT ICON\" HREF=\"\">
<LINK REL=\"StyleSheet\" HREF=\"../css.css\" type=\"text/css\">
<title>titel</title>
</head>

<body>
<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" height=\"100%\" width=\"100%\">
  <tr>
  <td width=\"150\" valign=\"top\" background=\"../images/bg_venstre.jpg\">
    <table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">
      <tr>
        <td width=\"100%\" bgcolor=\"#666666\" height=\"70\"></td>
      </tr>
      <tr>
        <td width=\"100%\" bgcolor=\"#CCCCCC\" height=\"18\"></td>
      </tr>
      <tr>
        <td width=\"100%\" height=\"300\" bgcolor=\"#666666\" valign=\"top\">
       
        <? include (\"../menu_top_1.php\"); ?>
       
        </td>
      </tr>
      <tr>
        <td width=\"100%\">
       
        <? include (\"../menu_bund.php\"); ?>
       
        </td>
      </tr>
    </table>
  </td>
    <td width=\"550\" height=\"99%\" valign=\"top\">
    <table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">
      <tr>
        <td width=\"100%\" bgcolor=\"#666666\" height=\"70\">
       
        <? include (\"../bannersystem_1.php\"); ?>
       
        </td>
      </tr>
      <tr>
        <td width=\"100%\" bgcolor=\"#CCCCCC\" height=\"18\"></td>
      </tr>
      <tr>
        <td width=\"100%\">
          <table border=\"0\" width=\"100%\">
            <tr>
              <td width=\"100%\"><b><a href=\"../index.php\"><font color=\"#000000\">Forsiden</font></a>
                > <a href=\"index.php\"><font color=\"#000000\">Artikler</font></a>
                ></b> <?
    HER CONNECTER JEG
                    $forfat3 = mysql_query(\"SELECT * FROM artikler WHERE id = \'$aid\'\");

$row3=mysql_fetch_array($forfat3);
echo $row3[over]; $kate = \"$row3[over]\"; ?><br> <br>
<hr size=\"1\">
                <table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">
                  <tr>
                    <td width=\"50%\">Skrevet af                 
                   
<?

    $update = mysql_query(\"UPDATE artikler SET hits=hits+1 WHERE id = \'$aid\'\") or die(mysql_error());
                    $forfat = mysql_query(\"SELECT * FROM artikler WHERE id = \'$aid\'\");

$row=mysql_fetch_array($forfat);
echo \"<a href=../community/profil.php?bruger=$row[username]>$row[af]<a/>\"; ?>


</td>
                    <td width=\"50%\" valign=\"top\">
                      <div align=\"right\">
                        <table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
                          <tr>
                            <td>
                              <p align=\"left\"><img border=\"0\" src=\"../images/print.gif\" width=\"16\" height=\"16\"></td>
                         
                             
                            <td>&nbsp;<? $forfa = mysql_query(\"SELECT * FROM artikler WHERE id = \'$aid\'\");

$row2=mysql_fetch_array($forfa); echo \"<a href=\\\"udskriv.php?aid=$row2[id]\\\" target=\\\"_blank\\\">Printer
                              venlig side</a>\"; ?> - Læst <? echo $row2[hits]; ?> gange</td>
                          </tr>
                        </table>
                      </div>
                    </td>
                  </tr>
                </table>
                <hr size=\"1\">
                <br>
              <? $ar = mysql_query(\"SELECT artikel FROM artikler WHERE id = \'$aid\'\");

$row=mysql_fetch_array($ar);
echo $row[artikel]; ?><br>
                <br>
          <b>Kommentarer</b>
                <hr size=\"1\">
               
                <? $kom = mysql_query(\"SELECT * FROM kommentarer WHERE kat = \'$kate\'\");

while($row = mysql_fetch_array($kom)) {
echo \"$row[kom]<br><br>\";

if ($row[username] == \"\") {

echo \"<b>Kommentar fra: $row[navn]</b><hr size=1><br>\"; } else { echo \"<b>Kommentar fra: <a href=../community/profil.php?bruger=$row[username]>$row[username]</a></b><hr size=1><br>\"; }

} ?>
               
               
               
               
               
               
               
               
               
               
                <br>
           
<table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">
                  <tr>
                    <td width=\"100%\" bgcolor=\"#F5F5F5\"><b>Giv en kommentar</b>
                      <hr size=\"1\">Hvis du har lyst til at give en kommentar til
                      artiklen kan du gøre det her, hvis du finder en fejl kan
                      du også skrive det her.<br><br>
  <?                    if ($skriv){
$kommentar = str_replace(\"\\n\", \"<br>\", $kommentar);
mysql_query(\"INSERT INTO kommentarer (navn, username, kat, kom) VALUES (\'$brugernavn2\', \'$brugernavn\', \'$kate\', \'$kommentar\')\"); } ?>
                   
                     
                    <form action=\"<? echo $PHP_SELF; ?>\" method=post>
                   
                   
                    <? if ($brugernavn) { echo \"<b>Dit Navn: $brugernavn</b>\"; } else { ?>
                   
                   
                    Dit Navn:<br><input type=\"text\" name=\"brugernavn2\" size=\"28\"> <? } ?>
                    <input type=hidden name=skriv VALUE=1>
                     

<input type=hidden name=aid VALUE=<? echo $aid; ?>>
                    <br>
                    <br>
                    Kommentar:
                    <br>
                    <textarea rows=\"7\" name=\"kommentar\" cols=\"76\"></textarea><br><input type=\"submit\" value=\"Send\" style=\"font-family: Verdana; font-size: 8pt; border-style: outset; border-width: 2\">
                    </td>
                  </tr>
                </table>

              </td>
            </tr>
          </table>
        </td>
      </tr>
    </table>
    </td>
    <td width=\"3\" valign=\"top\" background=\"../images/right.gif\">

      <table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">
        <tr>
          <td width=\"100%\" bgcolor=\"#666666\" height=\"70\"> &nbsp; </td>
        </tr>
        <tr>
          <td width=\"100%\" bgcolor=\"#CCCCCC\" height=\"18\"></td>
        </tr>
      </table>

      </td>
    <td valign=\"top\">
      <table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">
        <tr>
          <td width=\"100%\" bgcolor=\"#666666\" height=\"70\">&nbsp;</td>
        </tr>
        <tr>
          <td width=\"100%\" bgcolor=\"#CCCCCC\" height=\"18\"></td>
        </tr>
      </table>
    </td>
  </tr>
  <tr>
  <td background=\"../images/bg_venstre.jpg\"></td>
    <td height=\"1%\">
<? include(\"../bund.php\"); ?>
    </td>
    <td background=\"../images/right2.gif\"></td>
    <td height=\"1%\"></td>
  </tr>
</table>

</body>

</html>
Avatar billede cyberdude Nybegynder
19. september 2001 - 00:29 #15
hmm din kode ser neget forvirende ud.......

når man skriver en kommentar (eller hvad nu man skal skrive i den) bliver der så godtnok indsat noget i din database ?

du har nemlig 2 stk.

if ($skriv) {
sætninger på din side.......... måske det forvire scriptet......
men som skrevet øverest.....??
Avatar billede subcenx Nybegynder
19. september 2001 - 00:30 #16
Ja det bliver godt nok indsat....alt virker fint bare ikke det med id ???
Avatar billede subcenx Nybegynder
19. september 2001 - 00:34 #17
Jeg har lige lavet en fil som kun inde holder dette og den virker ikke :-(

<?
require(\"fil.php\");

mysql_connect($dbhost, $dbuser, $dbpass);
    mysql_select_db($database);
mysql_query(\"INSERT INTO kommentarer (navn, username, kat, kom) VALUES (\'bla\', \'2\', \'3\', \'4\')\");
$mommentar_id = mysql_insert_id();

echo \"Du har fået tildelt id nr. $kommentar_id\";
?>
Avatar billede cyberdude Nybegynder
19. september 2001 - 00:35 #18
<? 
                if ($skriv){
$kommentar = str_replace(\"\\n\", \"<br>\", $kommentar);
mysql_query(\"INSERT INTO kommentarer (navn, username, kat, kom) VALUES (\'$brugernavn2\', \'$brugernavn\', \'$kate\', \'$kommentar\')\");
$komentar_id = mysql_insert_id();
} ?>


dette her burde altså give dig adgang til det id du lige har indsat >såfremt der bliver indsat noget i databasen<
via variablen
<?
echo \"$komentar_id\";
?>

virker det ikke så har jeg ikke nogen ide på stående fod, ud over at registrere denne id i en session, så den er tilgængelig på alle sider........
Avatar billede cyberdude Nybegynder
19. september 2001 - 00:36 #19
har du taget højde for min tastefejl........ ?

$mommentar_id = mysql_insert_id();

>>>>mommentar_id skulle have været Kommentar.....

i det sidste forslag jeg kom med er det stavet sådant her
komentar_id
Avatar billede subcenx Nybegynder
19. september 2001 - 18:09 #20
Ja men det virker ikke og den indsætter det godt nok i databasen....

Kan det have noget at gøre med webhotels opsætning ???
Avatar billede sukos Juniormester
20. september 2001 - 00:26 #21
Øhm, hvor definerer du en ID?
Avatar billede subcenx Nybegynder
20. september 2001 - 08:26 #22
>sukos

Hvad mener du med hvordan jeg definere et ID ?
Avatar billede cyberdude Nybegynder
20. september 2001 - 12:29 #23
Hmm. beklager den lange svartid, men var lige på en 18 timers vagt i går......

Prøv denne her, har tilføjet feltet id som et den skal indsætte men så værdien som \"\" (ingenting) så fungerede den normale sql ting med at den selv plusser en fra forige række......

<? 
                if ($skriv){
$kommentar = str_replace(\"\\n\", \"<br>\", $kommentar);
mysql_query(\"INSERT INTO kommentarer (id, navn, username, kat, kom) VALUES (\'\', \'$brugernavn2\', \'$brugernavn\', \'$kate\', \'$kommentar\')\");
$komentar_id = mysql_insert_id();
} ?>




Avatar billede subcenx Nybegynder
20. september 2001 - 14:41 #24
næe det virker heller ikke den skriver bare 0 hele tiden ???? Hvorfor er det webhotellet ??
Avatar billede cyberdude Nybegynder
20. september 2001 - 17:06 #25
det tvivler jeg på....... men hvem er webhotellet ??

ved ikke om der er nogen indvirkning på denne funktion hvis webhotellet køre deres php i safemode...
Avatar billede subcenx Nybegynder
20. september 2001 - 17:12 #26
Avatar billede subcenx Nybegynder
24. september 2001 - 15:19 #27
jeg giver point til mig selv da der ikke er nogle som har sagt noget som virker.....
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