Zum Inhalt springen

INSERT Problem bei zwei voneinander abhängigen Tabellen.


Empfohlene Beiträge

Geschrieben

So und nun der umgekehrte Weg,

ich hab zwei Tabellen und die eine ist abhängig vom Primary Key der anderen Tabelle, da dieser auto_inc ist weiss ich natürlich vorher nicht welchen wert der key als nächstes hat, ich mach das jetzt so dass ich zuerst die Werte in die erste Tabelle Eintrage und diese dann auslese anhand eines anderen Parameters der aber leider nicht UNIQUE sein kann :( also kann es durchaus vorkommen das da ein Fehler auftritt, aber ich weiss nicht wie ich es anders machen könnte :((

Hier das FILE :

<html><head><title>neues Topic erstellen</title></head>

<?php

    include ('color.inc');

    include ('mysqlvar.inc');

    $db=mysql_connect($dbserver,$dbuser,$dbpass);

        mysql_select_db($dbname,$db);

        if ($db)

           {

             $query='SELECT * FROM user WHERE pseudonym="'.$name.'" ';

             $result=mysql_query($query,$db);

             if (!$result) { die ("Sorry falscher Nickname bitte benutzen sie den BACK-Buttons ihres Browsers!"); }

             if ($result)

                {

                   $readpass=mysql_fetch_array($result, MYSQL_ASSOC);

                   if ($pass<>$readpass["passwort"]) { die ("Falsches Passwort !! Bitte benutzen sie den BACK-Buttons ihres Browsers!"); }

                   if ($topicname=="") { die ("Sorry, das Topic braucht eine Überschrift ! Bitte benutzen sie den BACK-Buttons ihres Browsers!"); }

                   $datum=getdate();

                   $query="INSERT INTO topics (fid, tid, topicname, erstellerid) VALUES ('".$nr."', '', '".$topicname."', '".$readpass["erstellerid"]."')";

                   $result=mysql_query($query,$db);

                   $query='SELECT tid FROM topics WHERE topicname="'.$topicname.'" ';

                   $result=mysql_query($query,$db);

                   $topicid=mysql_fetch_array($result, MYSQL_ASSOC);

                   $query="INSERT INTO topicbeitraege (tid, eid, beitrag, erstellerid, datum, uhrzeit) VALUES ('".$topicid["tid"]."', '', '".$beitrag."', '".$readpass["erstellerid"]."', '".$datum["year"]."-".$datum["mon"]."-".$datum["mday"]."', '".$datum["hours"].":".$datum["minutes"].":".$datum["seconds"]."')";

                   $result=mysql_query($query,$db);

                   echo 'Beitrag wurde erstellt !<br>';

                   echo '<a href="foren.php">Weiter zum Forenindex</a><br>';

                   $beta="showforum.php?forum=".$nr;

                   echo '<a href="'.$beta.'">Weiter zum Forum</a></br>';

                   $beta="topiczeigen.php?nr=".$topicid["tid"];

                   echo '<a href="'.$beta.'">Weiter zum Topic</a></br>';

                 }

            }

    echo'</body></html>';

?>

Ich hoffe es wird mr wieder so schnell geholfen, aber leider kann ich nicht vorstellen das es ein INSERT gibt das das machen kann, naja die Hoffnung stirbt zuletzt.

Geschrieben

Kannst du da nicht mal n einfacheres Beispiel posten? z.B. anhand 2er Minitabellen an denen du erklärst was du machen willst?

Ist mir nämlich so zu kompliziert ... lol

Geschrieben

iss ganz einfach, also folgende Tabellen

TAB1 hat folgende Spalten tid fid wobei tid der primary key ist und dieser ist auto_increment..

TAB2 hat folgende Spalten tid sid wobei sid der prim. Key ist und auch auto_increment.

So jetzt muss ich einmal sid in TAB2 einfügen allerdings muss ich zuerst tid in TAB1 erzeugen weil genau dieser Wert auch tid in TAB2 werden soll.

Da tid ja auto_increment ist weiss ich ja nicht welchen Wert er als nächstes annimmt und muss zuerst in TAB1 schreiben, diese auslesen und dann das ausgelesene tid in TAB2 eintragen.

Naja und ich wollte wissen ob man das auch mit einer INSERT Anweisung direkt handln kann. Scheinbar aber nicht, naja der Link von Kandi hat auf alle Fälle geholfen :)

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...