I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
ok.. det jeg har er 2 tabeler. i den ene står der job [Job_type](fx. Bar 1 , Bar 2 , Bar 3) og i den anden har jeg [job](ID, jobs, navn) Det der gerne skulle komme ud er (!! Bar 1 og jobs er det samme !!) Fx. bar 1 ID, Navn ID, Navn
Hmm, det er stadig noget forvirrende. Hvad der står i tabellerne og hvad du vil have ud. Kunne du måske lave en dump af dine tabeller med et par rækker data; i den her stil:
CREATE TABLE test ( id smallint(5) unsigned NOT NULL auto_increment, profil varchar(255) character set latin1 NOT NULL default '', PRIMARY KEY (id) ) TYPE=MyISAM;
# # Data dump for tabellen `test` #
INSERT INTO test VALUES (1, '610 123 1654'); INSERT INTO test VALUES (2, '610 4123 654');
Jeg tror jeg har forstået meningen. Det nemmeste bliver nok at lave flere forespørgsler, medmindre din database er travlt optaget. Fx sådan her:
<? require 'db.php';// Forbindelse til database $out = ""; $res = mysql_query("select Job from job_type order by Job") or die(mysql_error()); while ($row = mysql_fetch_row($res)) { $out .= $row[0]."<br /><br />"; $res2 = mysql_query("select ID, Navn from job where Job='".$row[0]."'") or die(mysql_error()); while ($row2 = mysql_fetch_assoc($res2)) { $out .= $row2['ID'].", ".$row2['Navn']."<br />"; } $out .= "----------<br />"; } echo $out;// Spyt ud ?>
Jeg vil starte med at sige tak. for den tid du har lagt i det her.
Det virker faktisk meget godt.. spørgsmålet er om man kunne lave det endnu mere enkelt... jeg syntes ikke helt jeg kan over skue hvad der sker..
jeg skal nemmelig også have hevet en ting mere ud.. i tabelen job er der et ID. Den ID har jeg også i en tabel som hedder basic. og fra basic skal jeg have en adresse ud fra hver person..
Hvis man skal forklare hvad der sker i koden.
Så først forbinder til DB Laver en variabel ($out) lave en variabel og skriver det hele ud ( køre i en løkke) skriver data felt 0 ud
Jeg tror ikke det kan laves så meget enklere, spørgsmålet er hvor store dine tabeller er og hvor 'travl' din database er. For i givet fald skulle du nok overveje en løsning, hvor man trækker alle oplysninger ud med nogle få forespørgsler og sorterer dem i php. Hvis det derimod ikke er noget problem ville jeg holde mig til denne metode. Mht at hente adressen fra en tredie tabel, kan du ændre den anden forespørgsel i den her stil (navnene skal du lige rette til så de passer med dine):
<? require 'db.php';// Forbindelse til database $out = ""; $res = mysql_query("select Job from job_type order by Job") or die(mysql_error()); while ($row = mysql_fetch_row($res)) { $out .= $row[0]."<br /><br />"; $res2 = mysql_query("select a.ID, a.Navn, b.adresse from job a left join basic b on a.ID=b.jobID where Job='".$row[0]."'") or die(mysql_error()); while ($row2 = mysql_fetch_assoc($res2)) { $out .= $row2['ID'].", ".$row2['Navn'].", "; $out .= $row2['adresse']."<br />"; } $out .= "----------<br />"; } echo $out;// Spyt ud ?>
Hej igen.. bare for at være meget bøvlet kunne jeg godt tænke mig at få det sat ind i tabeler.. jeg har klippet noget ind så du kan se hvad jeg mener..
$out = ""; $res = mysql_query("select JOB from job_type order by JOB") or die(mysql_error()); while ($row = mysql_fetch_row($res)) { $out .= $row[0]."<br /><br />"; $res2 = mysql_query("select t1.Ident, t1.Fornavn,t1.Efternavn,t1.Adresse,t1.Postnr,t3.City,t1.Telefon,t1.andet,t2.Job_før,t2.Job_efter from basis as t1 , deltagelse as t2 , postnr as t3 where t1.Ident=t2.Ident and t1.postnr=t3.postnr and t2.Job_under='".$row[0]."'") or die(mysql_error()); while ($row2 = mysql_fetch_assoc($res2)) { echo "<table>"; while ($row2 = mysql_fetch_array($res2)) { echo " <tr><table border=1 width=600 cellspacing=0> <td width=300>".$row2['Ident']."</td> <td width=100>".$row2['Fornavn']."</td> <td width=200>".$row2['Efternavn']."</td> </tr>"; } } echo "</table>";
men det virker selvfølig ikke.. PS jeg kunne også godt tænke mig at få sat den første ind i en tabel..
Du har: while ($row2 = mysql_fetch_assoc($res2)) to gange efter hinanden. Og prøv at erstatte echo med: $out .= ,så samler du alt outputtet og echo'er det til sidst. I den her stil:
<? $out = ""; $res = mysql_query("select JOB from job_type order by JOB") or die(mysql_error()); while ($row = mysql_fetch_row($res)) { $out .= $row[0]."<br /><br />"; $res2 = mysql_query("select t1.Ident, t1.Fornavn,t1.Efternavn,t1.Adresse,t1.Postnr,t3.City,t1.Telefon,t1.andet,t2.Job_før,t2.Job_efter from basis as t1 , deltagelse as t2 , postnr as t3 where t1.Ident=t2.Ident and t1.postnr=t3.postnr and t2.Job_under='".$row[0]."'") or die(mysql_error()); $out .= "<table>"; while ($row2 = mysql_fetch_array($res2)) { $out .= " <tr><table border=1 width=600 cellspacing=0> <td width=300>".$row2['Ident']."</td> <td width=100>".$row2['Fornavn']."</td> <td width=200>".$row2['Efternavn']."</td> </tr>"; } $out .= "</table>"; } echo $out; ?>
Hvor mange 'JOB' regner du med at få i 'job_type'? For det vil resultere i en ekstra forespørgsel for hver 'JOB'. Det kan klares med ialt 2 forespørgsler, hvis vi optimerer det lidt.
Så vil jeg foreslå, at du ændrer scriptet til kun at lave to forespørgsler. Jeg har lavet et eksempel, der illustrerer det og sætter resultatet i en tabel:
<? require 'db.php';// Forbindelse til database
$res = mysql_query(" select Job from job_type order by Job ") or die(mysql_error()); while ($data = mysql_fetch_row($res)) { $jobs[] = $data[0]; } mysql_free_result($res);
$res = mysql_query(" select a.ID, a.Navn, a.Job, b.adresse from job a left join basic b on a.ID=b.jobID order by a.Job, a.ID ") or die(mysql_error()); while ($data = mysql_fetch_assoc($res)) { $row[] = $data; } mysql_free_result($res);
$res = mysql_query(" select Job from job_type order by Job ") or die(mysql_error()); while ($data = mysql_fetch_row($res)) { $jobs[] = $data[0]; } mysql_free_result($res);
$res = mysql_query(" select a.ID, a.Navn, a.Job, b.adresse from job a left join basic b on a.ID=b.jobID order by a.Job, a.ID ") or die(mysql_error()); while ($data = mysql_fetch_assoc($res)) { $row[] = $data; } mysql_free_result($res);
Hejsa jeg har alså stadigvæk problemer med at få det til at virke.... hvis du vil kan jeg godt sende dig et billede af hvordan jeg gerne skulle have det ud.. hvis du så lige gidder at sende en mail til kim_b78 @ hotmail.com
Jeg fik det til at virke.. dog kunne jeg godt tænkte mig nogle få ændringer.. fx. når den skriver indholdet af JOB ud så kunne jeg godt tænkte mig at jeg får antaldet af personer under jobbet skrevet ud (kan i ikke bruges til dette)
og så har jeg skrevet hvor jeg godt kunne tænke mig at få linje skift ind...
$res = mysql_query("select JOB from job_type order by JOB") or die(mysql_error()); while ($data = mysql_fetch_row($res)) { $jobs[] = $data[0]; } mysql_free_result($res);
$res = mysql_query("select t1.Ident, t1.Fornavn,t1.Efternavn,t1.Adresse,t1.Postnr,t3.City,t1.Telefon,t1.andet,t2.Job_før,t2.Job_efter,t4.JOB from basis as t1 , deltagelse as t2 , postnr as t3 , Job_type as t4 where t1.Ident=t2.Ident and t1.postnr=t3.postnr and t2.Job_under=t4.JOB") or die(mysql_error()); while ($data = mysql_fetch_assoc($res)) { $row[] = $data; } mysql_free_result($res);
$res = mysql_query("select JOB from job_type order by JOB") or die(mysql_error()); while ($data = mysql_fetch_row($res)) { $jobs[] = $data[0]; $antal[] = mysql_result(mysql_query("select count(*) from deltagelse where Job_under='$data[0]'"),0); } mysql_free_result($res);
$res = mysql_query("select t1.Ident, t1.Fornavn,t1.Efternavn,t1.Adresse,t1.Postnr,t3.City,t1.Telefon,t1.andet,t2.Job_før,t2.Job_efter,t4.JOB from basis as t1 , deltagelse as t2 , postnr as t3 , Job_type as t4 where t1.Ident=t2.Ident and t1.postnr=t3.postnr and t2.Job_under=t4.JOB") or die(mysql_error()); while ($data = mysql_fetch_assoc($res)) { $row[] = $data; } mysql_free_result($res);
gidder du ikke lige kontakte mig på mail kim_b78 a hotmail.com så kan jeg lige sende dig et billede af hvordan det gerne skulle ende med at se ud.. jeg er ikke så gald for at ligge det på nettet
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.