Het invoegen van FOREIGN KEY's in een Tabel

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jacob Koornneef

Jacob Koornneef

15/07/2009 09:03:00
Quote Anchor link
Ik heb de volgende tabel im mijn database.

DROP TABLE IF EXISTS Casemanager;
CREATE TABLE Casemanager (
ID INT(11) NOT NULL AUTO_INCREMENT,
Workingstatus TINYINT(1) DEFAULT '0',
SocialCentre INT(11),
Contacts INT(11),
CONSTRAINT CasemanagerPK PRIMARY KEY(ID)
)ENGINE=INNODB;

SocialCentre en contacts zijn foreign keys.
SocialCentre wordt in een form als drop down uit de database gehaald.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$result
= mysql_query("SELECT * FROM SocialCentre");

echo "<select>";

while($row = mysql_fetch_array($result))
    {

    echo "<option value='$row[ID]'>".$row['SocialCentreName']."</option>";
    }

                                    
echo "</select>";
?>


Ik heb dus een naam maar hoe verkrijg ik de juiste ID toegevoegd in bovenstaande tabel?

Contacts kan compleet nieuw aangelegt worden en opgeslagen in de tabel contacts. Het kan ook zijn dat de contact al bestaat en dan moet die FOREIGN KEY worden opgeslagen in de bovenstaande tabel.

Hoe krijg ik de FOREIGN KEY's van deze twee tabellen in de tabel Casemanager?

Alvast bedankt.
Wordt langzaam kaal van het haren trekken. :D
Gewijzigd op 01/01/1970 01:00:00 door Jacob Koornneef
 
PHP hulp

PHP hulp

28/11/2024 12:06:19
 
Mr.Ark

Mr.Ark

15/07/2009 09:15:00
Quote Anchor link
Maak je code eerst eens wat netter.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?php

/* Errors */
error_reporting(E_ALL);

/* Query uitvoeren */
$Query =
"
    SELECT
        ID,
        SocialCentreName
    FROM
        SocialCentre
"
;

/* Resultaat van de query */
$Result = mysql_query($Query);

/* Kijken of de query is gelukt */
if(!$Result)
{

    /* Foutje in query */
    echo 'Er is een fout opgetreden met het selecteren van de gegevens.';
}

else
{
    /* Kijken of er wel resultaten zijn */
    if(mysql_num_rows($Result) == 0)
    {

        /* Geen resultaten in database */
        echo 'Er staat niks in de database.';
    }

    else
    {
        /* Dropdown starten */
        echo '<select name="select" id="select">';
        
        /* While loop beginnen om resultaten weer te geven */
        while($row = mysql_fetch_assoc($Result))
        {

            echo '<option value="'.$row['ID'].'">'.$row['SocialCentreName'].'</option>';
        }

        
        /* Dropdown sluiten */
        echo '</select>'
    }
}


?>


Als ik het goed begrijp wil je dus wat je laat zien in een andere tabel zetten?
 
Jacob Koornneef

Jacob Koornneef

15/07/2009 10:04:00
Quote Anchor link
@ commentaar. Heb je helemaal gelijk in. Heb het echter hier deels ingekort om niet al te lange code delen te posten. In de orginele code staat niet zoveel Commentaar maar toch wat. Misschien moet ik me deze stijl wat meer aanleren.

Ik laat de naam zien en wil de bijbehorende ID als FOREIGN KEY in een andere tabel zetten.

Verder heb ik 2 input velden. 1 voor telefoonnummer en 1 voor email. Die worden opgeslagen in een tabel Contact. Als daar data wordt ingetyped moet dat gecontroleerd worden of het al bestaat, opgeslagen in de tabel contact en vervolgens Contact ID = Casemanager.Contact. Maar ik krijg Contact.ID niet opgeslagen in casemanager.
Gewijzigd op 01/01/1970 01:00:00 door Jacob Koornneef
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.