Avatar billede a55830 Praktikant
04. februar 2008 - 01:09 Der er 10 kommentarer og
1 løsning

udtræk fra 2 databaser på en gang

hej igen
nå det her er nok lidt svære end som så

jeg har en database der hedder spejder og i den er der en tabel "dates" og en der hedder "events"
i dates er der nogle datoer med events i form af events koder der henviser til tabellen events hvor der står selve eventen.

men hvordan slår jeg op så jeg har datoer og events

dato formatet er sådanne 2008-11-03 og event koden er 1 , 2 , 3 ect...
Avatar billede a55830 Praktikant
04. februar 2008 - 01:10 #1
ups det er ikke 2 db'er men 2 tabeller
Avatar billede jakobdo Ekspert
04. februar 2008 - 06:44 #2
Du kan lave:

SELECT tabel1.noget, tabel2.andet FROM tabel1, tabel2 WHERE tabel1.id = tabel2.fremmed_id

Eller du kan kigge på JOIN eller UNION
Avatar billede a55830 Praktikant
05. februar 2008 - 10:39 #3
nå her er den kode jeg prøver med men jeg får noget være krims krams ud af den ( www.blueeye.dk/spejder ) det er det i højre side

er der ikke en der kan hjælpe

<?php
$dd = date("m");
$aa = date("Y");
$tot = "'" . $aa . "-" . $dd . "%'";
$con = mysql_connect("localhost","xxxxx","xxxxx");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("Spejder", $con);

$sql = mysql_query("SELECT dates.*, events.* FROM dates, events WHERE date LIKE $tot");
echo $tot;
echo "<table border='0' width='100%' cellspacing='0' cellpadding='2'>";

while($row = mysql_fetch_array($sql))
  {
  echo "<tr>"; 
  echo "<td>" . $row['date'] . "<td></td>" . $row['title'] . "</td>";
  echo "</tr>";
  }
echo "</table>";

mysql_close($con);
?>
Avatar billede jakobdo Ekspert
05. februar 2008 - 10:45 #4
Hvilke felter binder de 2 tabeller sammen?
Avatar billede a55830 Praktikant
05. februar 2008 - 19:12 #5
det gør event_id , jeg har lavet lidt om igen igen så det virker bedere

her er så den linie der er rettet og virker perfekt
$sql = mysql_query("SELECT dates.*, events.* FROM dates, events WHERE dates.event_id = events.event_id AND date LIKE $tot");

jakobdo smider du ikke lige et svar
Avatar billede jakobdo Ekspert
05. februar 2008 - 19:52 #6
Du kunne også overveje:
SELECT d.date, e.title FROM dates d INNER JOIN events e ON d.event_id = e.event_id WHERE d.date = $tot
Avatar billede jakobdo Ekspert
06. februar 2008 - 15:11 #7
Fik du det til at virke?
Lad vær med at bruge dates.* og event.*
Du skal vende dig til kun at trække de data ud du vil benytte.

PS: Takker for point.
Avatar billede a55830 Praktikant
06. februar 2008 - 15:21 #8
jamen hvordan skal den så se ud , så danne helt nøragtig
Avatar billede jakobdo Ekspert
06. februar 2008 - 15:35 #9
Hvad virker hos dig nu ? (vis hele koden, tak)
Avatar billede a55830 Praktikant
06. februar 2008 - 16:07 #10
alt virker som det skal
men med dates.* og events.*

<?php
$dd = date("m");
$aa = date("Y");
$tot = "'" . $aa . "-" . $dd . "%'";
$con = mysql_connect("localhost");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("Spejder", $con);

$sql = mysql_query("SELECT dates.*, events.* FROM dates, events WHERE dates.event_id = events.event_id AND date LIKE $tot");

echo "<table border='0' width='100%' cellspacing='0' cellpadding='2'>
        <tr>
            <th>Dato/Kl.</th>
           
            <th>Event</th>
        </tr>";

while($row = mysql_fetch_array($sql))
  {
  echo "<tr>"; 
  echo "<td>" . $row['date'] . "</td><td><a href=\"#\" onclick=\"window.open('kalender/show_event.php?id=" . $row['event_id'] . "','subWindow','height=400,width=600,top=162,screenY=162,left=340,screenX=340,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,alwaysLowered=no,alwaysRaised=no,dependent=no,hotkeys=no,titlebar=no,z-lock=no,fullscreen=no,channelmode=no')\">" . $row['title'] . "</a></td>";
  echo "</tr>";
  }
echo "</table>";

mysql_close($con);
?>
Avatar billede jakobdo Ekspert
07. februar 2008 - 20:26 #11
Prøv at ret din SQL til:

$sql = mysql_query("SELECT dates.date, events.event_id, event.title FROM dates, events WHERE dates.event_id = events.event_id AND date LIKE $tot");
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