Denna delen av 99 uppdateras inte längre utan har arkiverats inför framtiden som ett museum.
Här kan du läsa mer om varför.
Mac-nyheter hittar du på Macradion.com och forumet hittar du via Applebubblan.

Kurser för att lära mig webbutveckling

Tråden skapades och har fått 95 svar. Det senaste inlägget skrevs .
  • Medlem
  • Luleå
  • 2013-06-13 16:34

Irrelogical, du nämnde gammeldax skriven kod. Har du kanske tips om var jag kan lära mig "modernare" skriven phpkod?

  • Medlem
  • Luleå
  • 2013-06-14 13:38

Hur ska man göra när det står "syntax error, unexpected end of file" när jag har skrivit ?> som slut?

Hela filen är här nedan och det handlar om att lägga till/radera information från en databas. Reultatet i boken av den här koden är ganska snygg och det vore ju trist att inte lyckas. Hela texten har jag skrivit av från boken(och bytt ut tabell och liknande till min egen databas). När jag kollar den i netbeans så ungefär vid rad 67 så övergår några färger som förut har varit i blått till att vara orange. Det gäller tillexempel ord som if, echo och die.
Misstänkt stavfel, men var? Finns det nåt bra sätt att ta reda på om man gjort stavfel mer än att kolla själv. Uppenbarligen så missar man både det ena och det andra.

<?php
require_once('login.php');
$db_server = mysql_connect($db_hostname, $db_username, $db_password);

if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());

mysql_select_db($db_database)
or die("Unable to select database: " . mysql_error());

if (isset($_POST['delete']) && isset($_POST['cities']))
{
$cities = get_post('cities');
$query = "DELETE FROM countries WHERE cities='$cities'";

if (!mysql_query($query, $db_server))
echo "DELETE failed: $query<br />" .
mysql_error() . "<br /><br />";
}

if (isset($_POST['cities']) &&
isset($_POST['population']) &&
isset($_POST['continent']) &&
isset($_POST['mustsee']) &&
isset($_POST['skala']))
{
$cities = get_post('cities');
$population = get_post('population');
$continent = get_post('continent');
$mustsee = get_post('mustsee');
$skala = get_post('skala');

$query = "INSERT INTO countries values" .
"('$cities', '$population', '$continent', '$mustsee', '$skala')";

if (!mysql_query($query, $db_server))
echo "INSERT failed: $query<br />" .
mysql_error() . "<br /><br />";
}

echo <<<_END

<form action="sqltest.php" method="post"><pre>
Cities <input type="text" name="cities" />
Population <input type="text" name="population" />
Continent <input type="text" name="continent" />
Must see <input type="text" name="mustsee" />
Skala <input type="text" name="skala" />
<input type="submit" value="ADD RECORD" />
</pre></form>
_END;

$query = "SELECT * FROM countries";
$result = mysql_query($query);

if (!$result) die ("Database access failed : " . mysql_error());
$rows = mysql_num_rows($result);

for ($j = 0 ; $j < $rows ; ++$j)
{
$rows = mysql_fetch_row($result);
echo <<<_END
<pre>
Cities $row[0]
Population $row[1]
Continent $row[2]
Must see $row[3]
Skala $row[4]
</pre>
<form action="sqltest.php" method="post">
<input type="hidden" name="delete" values="yes" />
<input type="hidden" name="cities" values="$row[0]" />
<input type="submit" value="DELETE RECORD" />
</form>
_END;
}
mysql_close($dbserver);

function get_post($var)
{
return mysql_real_escape_string($_POST[$var]);
}
?>

  • Medlem
  • Sollentuna
  • 2013-06-14 14:00

Jag ser inget omedelbart fel i koden som den är skriven, men kolla så du inte har nån whitespace (mellanslag/tab) i början av dina "_END;"-rader. Det kan ha försvunnit när du klistrade in koden..

Tips: När du klistrar in kod här, använd gärna forumets kodformateringstaggar så att all indentering och annat kommer med.

echo "Hello, world!";
  • Medlem
  • Luleå
  • 2013-06-14 14:52

Det var det som var felet. Tydligen ska man inte ha någon whitespace alls före _END;. Tack Vassius!

"använd forumets kodformateringstaggar". Absolut. Hur gör man?

Se en fråga till. Jag kopierar in filens kod igen. Det går nu att lägga till i tabellen, men det går inte att delete:a. Någon som vet varför?

<?php
require_once('login.php');
$db_server = mysql_connect($db_hostname, $db_username, $db_password);

if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());

mysql_select_db($db_database)
or die("Unable to select database: " . mysql_error());

if (isset($_POST['delete']) && isset($_POST['countries']))
{
	$cities = get_post('countries');
	$query = "DELETE FROM countries WHERE cities='$countries'";
	
	if (!mysql_query($query, $db_server))
	echo "DELETE failed: $query<br />" .
	mysql_error() . "<br /><br />";
}

if (isset($_POST['cities']) &&
    isset($_POST['population']) &&
    isset($_POST['continent']) &&
    isset($_POST['mustsee']) &&
    isset($_POST['skala']))
{
	$cities     = get_post('cities');
	$population = get_post('population');
	$continent  = get_post('continent');
	$mustsee    = get_post('mustsee');  
	$skala      = get_post('skala');
	
	$query = "INSERT INTO countries values" .
	         "('$cities', '$population', '$continent', '$mustsee', '$skala')";
	     
	if (!mysql_query($query, $db_server))
	    echo "INSERT failed: $query<br />" .
	    mysql_error() . "<br /><br />";
}
echo <<<_END
<form action="sqltest.php" method="post"><pre>
    Cities <input type="text" name="cities" />   
Population <input type="text" name="population" />  
 Continent <input type="text" name="continent" />
  Must see <input type="text" name="mustsee" />
     Skala <input type="text" name="skala" /> 
      <input type="submit" value="ADD RECORD" />
      </pre></form>
_END;
      
      $query = "SELECT * FROM countries";
      $result = mysql_query($query);
      
      if (!$result) die ("Database access failed : " . mysql_error());
      $rows = mysql_num_rows($result);
      
      for ($j = 0 ; $j < $rows ; ++$j)
      {
      	$row = mysql_fetch_row($result);
echo <<<_END
     <pre> 	
      	Cities $row[0]
    Population $row[1]
     Continent $row[2]
      Must see $row[3]
      	 Skala $row[4]
     </pre> 	
     <form action="sqltest.php" method="post">
     <input type="hidden" name="delete" values="yes" />  
     <input type="hidden" name="cities" values="$row[0]" />  
     <input type="submit" value="DELETE RECORD" />  
     </form>
_END;
      }
      mysql_close($db_server);
      
      function get_post($var)
      {
      	return mysql_real_escape_string($_POST[$var]);
      }
?>
Ursprungligen av KOL:

"använd forumets kodformateringstaggar". Absolut. Hur gör man?

http://www.99mac.se/forum/t/301970-dokumentat...

  • Medlem
  • Luleå
  • 2013-06-14 21:53

Okej! tack keptang.

Angående koden i mitt förra inlägg. Vet någon varför jag kan lägga till men inte radera i tabellen? Alltså ADD RECORD funkar, men inte DELETE RECORD. Någon?

  • Medlem
  • Sollentuna
  • 2013-06-14 22:17
Ursprungligen av KOL:

Angående koden i mitt förra inlägg. Vet någon varför jag kan lägga till men inte radera i tabellen? Alltså ADD RECORD funkar, men inte DELETE RECORD. Någon?

Delete-segmentet av koden inleds med

if (isset($_POST['delete']) && isset($_POST['countries']))

...men såvitt jag kan se finns det inget formulärfält som heter 'countries', så andra villkoret i if-satsen kommer alltid att evalueras till FALSE, och därmed hoppar den över hela segmentet.

  • Medlem
  • Luleå
  • 2013-06-15 22:31

I boken så beskrivs den långa koden ovan som "daunting" och jag håller med. Jag anar att jag inte riktigt har förstått allt än.

Jag har alltså en tabell som heter countries. I den finns kolumnerna cities, population, continent, mustsee och skala.
Första frågan om delete-segmentet i koden, som jag gjort om lite, är om det här är rätt?

if (isset($_POST['delete']) && isset($_POST['cities']))
{
	$cities = get_post('cities');
	$query = "DELETE FROM countries WHERE cities='$cities'";

Nästa detalj. I tabellen finns varken primary key eller auto increment. Spelar det någon roll?

  • Medlem
  • Sollentuna
  • 2013-06-16 00:38
Ursprungligen av KOL:

I boken så beskrivs den långa koden ovan som "daunting" och jag håller med. Jag anar att jag inte riktigt har förstått allt än.

Jag har alltså en tabell som heter countries. I den finns kolumnerna cities, population, continent, mustsee och skala.
Första frågan om delete-segmentet i koden, som jag gjort om lite, är om det här är rätt?

if (isset($_POST['delete']) && isset($_POST['cities']))
{
	$cities = get_post('cities');
	$query = "DELETE FROM countries WHERE cities='$cities'";

Nästa detalj. I tabellen finns varken primary key eller auto increment. Spelar det någon roll?

Koden ser bättre ut nu. Annars är det ju bara att testa och se om det funkar.

Primary key behövs inte i en enkel övningsuppgift som denna. I större databaser behöver man primary key, dels av prestandaskäl (indexering), och dels för att varje rad i databasen ska ha ett garanterat unikt värde som identifierar den. Auto increment är relaterat till den senare.

  • Medlem
  • Luleå
  • 2013-06-16 01:16

Det funkar inte. Det är ett mysterium att jag kan lägga till information men inte radera. När jag klickar på Delete-knappen så händer ingentilng förutom att browsern uppdaterar sidan, man hamnar alltså längst upp igen. Inget raderat. Här är den igen.

<?php
require_once('login.php');
$db_server = mysql_connect($db_hostname, $db_username, $db_password);

if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());

mysql_select_db($db_database)
or die("Unable to select database: " . mysql_error());

if (isset($_POST['delete']) && isset($_POST['cities']))
{
	$cities = get_post('cities');
	$query = "DELETE FROM countries WHERE cities='$cities'";
	
	if (!mysql_query($query, $db_server))
	echo "DELETE failed: $query<br />" .
	mysql_error() . "<br /><br />";
}

if (isset($_POST['cities']) &&
    isset($_POST['population']) &&
    isset($_POST['continent']) &&
    isset($_POST['mustsee']) &&
    isset($_POST['skala']))
{
	$cities     = get_post('cities');
	$population = get_post('population');
	$continent  = get_post('continent');
	$mustsee    = get_post('mustsee');  
	$skala      = get_post('skala');
	
	$query = "INSERT INTO countries values" .
	         "('$cities', '$population', '$continent', '$mustsee', '$skala')";
	     
	if (!mysql_query($query, $db_server))
	    echo "INSERT failed: $query<br />" .
	    mysql_error() . "<br /><br />";
}
echo <<<_END
<form action="sqltest.php" method="post"><pre>
    Cities <input type="text" name="cities" />   
Population <input type="text" name="population" />  
 Continent <input type="text" name="continent" />
  Must see <input type="text" name="mustsee" />
     Skala <input type="text" name="skala" /> 
      <input type="submit" value="ADD RECORD" />
      </pre></form>
_END;
      
      $query = "SELECT * FROM countries";
      $result = mysql_query($query);
      
      if (!$result) die ("Database access failed : " . mysql_error());
      $rows = mysql_num_rows($result);
      
      for ($j = 0 ; $j < $rows ; ++$j)
      {
      	$row = mysql_fetch_row($result);
echo <<<_END
     <pre> 	
      	Cities $row[0]
    Population $row[1]
     Continent $row[2]
      Must see $row[3]
      	 Skala $row[4]
     </pre> 	
     <form action="sqltest.php" method="post">
     <input type="hidden" name="delete" values="yes" />  
     <input type="hidden" name="cities" values="$row[0]" />  
     <input type="submit" value="DELETE RECORD" />  
     </form>
_END;
      }
      mysql_close($db_server);
      
      function get_post($var)
      {
      	return mysql_real_escape_string($_POST[$var]);
      }
?>
  • Medlem
  • Luleå
  • 2013-06-16 01:19

Hur hade ni skrivit kod om ni hade haft samma uppgift som jag ovan? Lägga till och radera information från en databas via PHP.

  • Medlem
  • Sollentuna
  • 2013-06-16 10:47

Så vitt jag kan se ska det funka, men det förutsätter ju förstås att du ger rätt indata i formuläret.

DELETE FROM countries WHERE cities='$cities'

Likhetstecknet betyder att det som är lagrat i databasen måste överensstämma exakt med det du jämför med. Nu vet jag inte vad exakt du lagrar i databasen, men eftersom kolumnen heter "cities" så antyder ju det att du anger flera städer där. När du ska ta bort nånting ur databasen måste du ange städerna i formuläret exakt som de står i databasen, och inte bara en av städerna.

Om du vill kunna matcha delar av strängen så kan du kolla upp MySQLs LIKE-syntax.

  • Medlem
  • Luleå
  • 2013-06-16 19:33

Men i browsern så syns ju varje rad, från databasen, var för sig, sammanlagt alltså 5 rader (cities, population, continent, mustsee och skala). Under dessa fem rader, finns en delete-knapp. Om man trycker på denna deleteknapp så borde just den raden och bara den raden från databasen raderas. Alltså cities, population, continent, mustsee och skala. Inte sant? Eller har jag fått det här helt om bakfoten?

Är det kanske så att jag, som det ser ut nu, bara raderar cities? Men så är det ju inte heller för när jag klickar på delete oavsett var i databasen jag befinner mig, så försvinner inte någonting alls. Browsern laddar bara om sidan.

  • Medlem
  • Sollentuna
  • 2013-06-16 20:27
Ursprungligen av KOL:

Men i browsern så syns ju varje rad, från databasen, var för sig, sammanlagt alltså 5 rader (cities, population, continent, mustsee och skala). Under dessa fem rader, finns en delete-knapp. Om man trycker på denna deleteknapp så borde just den raden och bara den raden från databasen raderas. Alltså cities, population, continent, mustsee och skala. Inte sant? Eller har jag fått det här helt om bakfoten?

Är det kanske så att jag, som det ser ut nu, bara raderar cities? Men så är det ju inte heller för när jag klickar på delete oavsett var i databasen jag befinner mig, så försvinner inte någonting alls. Browsern laddar bara om sidan.

Ah, jag läste lite slarvigt förut, jag fick för mig att man skulle skriva in manuellt i ett formulär vad man vill radera ur databasen. Men nu såg jag att de fälten är type=hidden. Då tror jag felet är att du har angett attributet "values" för att ge ett förbestämt värde på de formulärfälten. Testa med "value" istället.

  • Medlem
  • Luleå
  • 2013-06-16 21:07

JAAAA!!!! Där var felet! Tack där @Vassius!!

Jag brukar först köra koden i mysql-konsollen för att se så att jag har rätt syntax (din DELETE FROM instruktion). När jag har syntaxen klar för mig skriver jag koden och byter ut de föränderliga delarna mot variabler, precis som det är skrivet. Fungerar det fortfarande inte brukar jag lägga in några utskrifter typ "hallå, här är jag" för att se så jag fått villkoren rätt i if-satserna.
Du kan lägga in en

echo "<pre>Går in i DELETE-delen</pre>";

precis efter if-satsen där så ser du om du har alla villkoren uppfyllda för att utföra din DELETE-query mot SQL-servern.

  • Medlem
  • Luleå
  • 2013-06-16 22:51

@suddgummi, väldigt bra instruktion. Men nu måste jag nog bena ut ett par saker.

Ursprungligen av suddgummi:

Jag brukar först köra koden i mysql-konsollen för att se så att jag har rätt syntax (din DELETE FROM instruktion).

1. Mysql-konsol, är det typ netbeans, Smultron eller nåt liknande?
2. "Köra koden", är det typ att du skriver den i netbeans och ser om du får några meddelanden angående koden, eller?

Ursprungligen av suddgummi:

När jag har syntaxen klar för mig skriver jag koden och byter ut de föränderliga delarna mot variabler, precis som det är skrivet.

3. "skriver koden". Menar du att du skriver in koden i den filen som den sedan ska vara i, eller?

Ursprungligen av suddgummi:

Fungerar det fortfarande inte brukar jag lägga in några utskrifter typ "hallå, här är jag" för att se så jag fått villkoren rätt i if-satserna.

4. Please, ge exempel på hur detta skulle kunna se ut.

Ursprungligen av suddgummi:

Du kan lägga in en

echo "<pre>Går in i DELETE-delen</pre>";

precis efter if-satsen där så ser du om du har alla villkoren uppfyllda för att utföra din DELETE-query mot SQL-servern.

5. Var? Jag har försökt klistra in det men får bara "syntax error, unexpected '<' ".

Ursprungligen av KOL:

@suddgummi, väldigt bra instruktion. Men nu måste jag nog bena ut ett par saker.

1. Mysql-konsol, är det typ netbeans, Smultron eller nåt liknande?
2. "Köra koden", är det typ att du skriver den i netbeans och ser om du får några meddelanden angående koden, eller?

3. "skriver koden". Menar du att du skriver in koden i den filen som den sedan ska vara i, eller?

4. Please, ge exempel på hur detta skulle kunna se ut.

5. Var? Jag har försökt klistra in det men får bara "syntax error, unexpected '<' ".

1. I Terminalen när du startade mysql fick du en prompt med "mysql>". Det är ett gränssnitt mot din mysql-server och där kan du skriva syntax som tolkas av din SQL-server.
2. Lite otydlig kanske jag var, men jag menar SQL-koden. Om du manuellt skriver in den SQL-kod du vill köra i den konsollen får du en känsla för hur SQL-koden ska se ut när du försöker implementera den i PHP.
3. Om jag har en SQL-syntax klar för mig för att lägga in t.ex. personuppgifter i en tabell som heter Personer och som har fälten Personnummer, Namn och Adress kanske koden för att lägga in en ny person ser ut så här:

INSERT INTO Personer (Personnummer, Namn, Adress) VALUES (197510121234, "Kalle Kula", "Gamla Gatan 1, Storstad")

Säg då att jag vill kunna mata in information i databasen från variablerna $personnummer, $namn och $adress. PHP-koden skulle kunna se ut nåt såhär (jag har inte testat):

mysqli_query($db_anslutning, "INSERT INTO Personer (Personnummer, Namn, Adress) VALUES ('$personnummer','$namn','$adress')");

Notera att du behöver mer än denna koden (du behöver upprätta en anslutning till en SQL-server med en tabell som heter Personer t.ex.) för att köra den. Det är bara ett exempel på hur jag tänker.
4. Se 3.
5. Jag hade lagt det efter if-satsen där du kontrollerar huruvida du har en delete och cities variabel satt.

if (isset($_POST['delete']) && isset($_POST['cities']))
{
HÄR!
.......
}
  • Medlem
  • Luleå
  • 2013-06-17 00:14

Wow! Mycket att ta in, mycket att fundera på här. Men tack @suddgummi, det känns verkligen som att några pusselbitar har börjat falla på plats.

Men jag få fortfarande meddelandet "syntax error, unexpected '<' " där du vill att jag ska klistra in den där raden med

"<pre>Går in i DELETE-delen</pre>";
Ursprungligen av KOL:

Wow! Mycket att ta in, mycket att fundera på här. Men tack @suddgummi, det känns verkligen som att några pusselbitar har börjat falla på plats.

Men jag få fortfarande meddelandet "syntax error, unexpected '<' " där du vill att jag ska klistra in den där raden med

"<pre>Går in i DELETE-delen</pre>";

Tar du echo framför? Se PHP-dokumentationen: http://php.net/manual/en/function.echo.php

  • Medlem
  • Luleå
  • 2013-06-17 00:50

@suddgummi, Ja, just det. Det var echo jag glömde. Men nu en fråga ytterligare. Jag har nu klistrat in

echo "<pre>Går in i DELETE-delen</pre>";

där du tyckte. Det som händer nu är ju att när jag raderat en rad i tabellen, genom php, så står det just "Går in i DELETE-delen" högst upp ovanför fälten där man skulle fylla i uppgifter för att lägga till information i tabellen. Vad är syftet med att det ska stå så där? Att raden, i databastabellen, hade allt för att den skulle raderas? Om den inte hade haft det, vad skulle hända då? Jag anar att detta är en väldigt dum fråga, men hoppas ni har överseende för det.

Ursprungligen av KOL:

@suddgummi, Ja, just det. Det var echo jag glömde. Men nu en fråga ytterligare. Jag har nu klistrat in

echo "<pre>Går in i DELETE-delen</pre>";

där du tyckte. Det som händer nu är ju att när jag raderat en rad i tabellen, genom php, så står det just "Går in i DELETE-delen" högst upp ovanför fälten där man skulle fylla i uppgifter för att lägga till information i tabellen. Vad är syftet med att det ska stå så där? Att raden, i databastabellen, hade allt för att den skulle raderas? Om den inte hade haft det, vad skulle hända då? Jag anar att detta är en väldigt dum fråga, men hoppas ni har överseende för det.

Meningen var för att se så att du "hoppar in" i den delen av PHP-skriptet. Du vet då att dina villkor är uppfyllda för att utföra DELETE (detta är ett sätt att avlusa, debugga, som jag använder mig av, när det fungerar tar jag bort de rader kod som inte ska vara där i slutändan).
Om det nu inte fungerar och du inte får ett felmeddelande från mysql queryt så bör din SQL-sats vara felaktig. Det är då jag menar att det är lämpligt att använda sig av mysql-konsollen för att se till så att man har rätt syntax (att hela uttrycket DELETE FROM är korrekt).

  • Medlem
  • Luleå
  • 2013-06-17 09:05

OK

Ett tips!

isset($_POST['delete']) && isset($_POST['cities'])

går att skriva så här:

isset($_POST['delete'], $_POST['cities'])
  • Medlem
  • Luleå
  • 2013-06-18 09:53

@irrelogical, det är ju klart lite smidigare ju mindre kod man behöver skriva. Tack, för tipset.

Vidare i boken. Den säger att om jag nu bara klickar på "add record" knappen, utan att fylla i något, så kommer en 1 finnas i varje fält. Men när jag gör detta så blir det enbart en 0 i population-fältet. Ingenting i de andra fälten. Kan någon se hur det kommer sig att det blir så här?

  • Medlem
  • Luleå
  • 2013-06-18 10:27

Hur var det nu, för att inte kunna lägga in samma information två gånger i en databas var det primary key man skulle använda, eller hur? Det enda jag ska använda det på i min tabell borde vara mustee. För det är det enda som är unikt just för den raden. Tänker jag rätt?
Nu kan jag väl lägga in en kolumn med primary key i efterhand i mysql, eller hur?
typ

ALTER TABLE countries, ADD PRIMARY KEY(must see);

Blir det som jag tänk då?

  • Medlem
  • Sollentuna
  • 2013-06-18 11:01
Ursprungligen av KOL:

Hur var det nu, för att inte kunna lägga in samma information två gånger i en databas var det primary key man skulle använda, eller hur? Det enda jag ska använda det på i min tabell borde vara mustee. För det är det enda som är unikt just för den raden. Tänker jag rätt?
Nu kan jag väl lägga in en kolumn med primary key i efterhand i mysql, eller hur?
typ

ALTER TABLE countries, ADD PRIMARY KEY(must see);

Blir det som jag tänk då?

Det man brukar göra är att ha en kolumn med ett ID-nummer som primary key. Det numret är bara en vanlig integer som inte har nånting med själva datat att göra. Fördelen med det är att du kan använda auto increment på den kolumnen, vilket gör att MySQL fyller i den automatiskt med nästa nummer i ordningen när du lägger in nytt data i tabellen. Då får du ett garanterat unikt ID-nummer på varje rad i tabellen.

  • Medlem
  • Luleå
  • 2013-06-18 23:45

Men om jag nu ska designa databasen och försöka uppnå 1:a, 2:a och 3:e normalformen så ska jag väl använda primary key. Eller?
Om jag kör på det upplägget jag nämnt här tidigare, en databas som handlar om länder. Kolumnerna jag vill ha med är några av de gamla, och så har jag lagt till några, countries, capital, population, continent, mustsee, skatepark, skateparkadress.
Jag tror att jag här ska ha countries, capital, population och mustsee i en tabell. Countries, skatepark och skateparkadress i en annan tabell där ju alltså då countries ska vara primary key. Continent ska vara i en helt egen tabell. Rätt eller fel?
och inte ska jag väl i så fall ha auto increment med, eller det ska jag kanske?

(jo, jag vet att jag måste göra om filen med koden som var "daunting" men jag tror det ska gå bra:))

  • Medlem
  • Stockholm
  • 2013-06-19 12:16

I huvudtabellen bör ID vara primary key och incrementa,

I de relaterade tabellerna bör du dels ha ett unikt ID som är primary och incrementar, för att underlätta jobb mot raderna i dessa tabeller, dels en kolumn som heter typ huvudtabellID där du sparar relationen, dvs ID till huvudtabellen. Denna bör va en key.

  • Medlem
  • Luleå
  • 2013-06-19 17:24

Okej, jag förstår. Göra om, göra rätt:)

Bevaka tråden