i rethought the sql and found, that the column parxdocs wont contain the
number of doctors per praxis.
this would only be done if there are more than one doctor with the same
name, surename and title in one praxis.

but you can do this instead
// now you'll get the number of doctors per praxis
$sql = "SELECT p.id,
                           p.$town,
                           p.$zip,
                           p.$phone,
                           p.$description
                           count(m.*) praxdocs
               FROM $praxTable p,
                           $medTable m
             WHERE p.id = m.prax";

$result = mysql_query($sql, $conn);
while ($row = mysql_fetch_array($result)) {
      for ($i = 0; $i < $row["praxdocs"]; $i++) {
            $docsql = "SELECT $sureName,
                                            $preName,
                                            $title
                                FROM $medTable
                              WHERE prax = {$row["id"]}";
             $docresult = mysql_query($docsql, $conn);
             while ($docrow = mysql_fetch_array($docresult)) {
                    // print names of docs here using $docrow array
             }
            //print address of praxis here using $row array
      }

}
"Michael Virnstein" <[EMAIL PROTECTED]> schrieb im Newsbeitrag
[EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
> typo in the querystring, this should work, i suppose
>
> $queryString =  "SELECT count(m.*) parxdocs
>                                           m.$sureName,
>                                           m.$preName,
>                                           m.$title,
>                                           m.prax,
>                                           p.$town,
>                                           p.$zip,
>                                           p.$phone,
>                                           p.$description
>                              FROM $medTable m,
>                                           $praxTable p
>                            WHERE m.$prax = p.$id
>                            GROUP BY m.prax, m.$preName, m.$sureName,
> m.$title, p.$town, p.$zip, p.$phone, p.$description
>                            ORDER BY m.$prax, m.$preName";
>
> "Michael Virnstein" <[EMAIL PROTECTED]> schrieb im Newsbeitrag
> [EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
> > ok, here we go.
> >
> > you normaly say this i suppose:
> >
> > while ($row = mysql_fetch_array($result) {
> >     //your html inserts here
> > }
> >
> > if you'd use oracle, i'd suggest using a cursor, but you're using MySql,
> so
> > you probably have to do it a bit different:
> > (Not tested, could contain some errors!!!)
> >
> > // you'll now have the number of doctors in one praxis in praxdocs
> > $queryString =  "SELECT count(m.*) parxdocs
> >                                          m.$sureName,
> >                                          m.$preName,
> >                                          m.$title,
> >                                          p.$town,
> >                                          p.$zip,
> >                                          p.$phone,
> >                                          p.$description
> >                             FROM $medTable m,
> >                                          $praxTable p
> >                           WHERE m.$prax = p.$id
> >                           GROUP BY m.prax, m.$preName, m.$sureName,
> > m.$title, p.$town, p.$zip, p.$phone, p.$description
> >                           ORDER BY m.$prax, m.$preName";
> >
> > // then output the html
> > while ($row = mysql_fetch_array($result)) {
> >     // we don't need the first one, because we already have it.
> >     echo "{$row["title"]} {$row["preName"]} {$row["sureName"]}<br>";
> >     for ($i = 1; $i < $row["praxdocs"]; $i++) {
> >         $doctor = mysql_fetch_array($result);
> >         echo "{$doctor["title"]} {$doctor["preName"]}
> > {$doctor["sureName"]}<br>";
> >     }
> >     // rest of the output using $row here
> > }
> >
> > hope that helps
> >
> > "Christoph Starkmann" <[EMAIL PROTECTED]> schrieb im Newsbeitrag
> > B120D7EC8868D411A63D0050040EDA77111BE9@XCHANGE">news:B120D7EC8868D411A63D0050040EDA77111BE9@XCHANGE...
> > > Hi folks!
> > >
> > > The following problem:
> > >
> > > I got a db (mysql) with information about doctors.
> > > Name, adress, phone etc.
> > >
> > > Now I'm reading these information with a simple
> > > mysql-query:
> > >
> > > $queryString =  "SELECT DISTINCT m.$sureName, m.$preName, m.$prax,
> > m.$title,
> > > ";
> > > $queryString .= "p.$town, p.$zip, p.$phone, p.$description ";
> > > $queryString .=  "FROM $medTable m, $praxTable p WHERE ";
> > > $queryString .= "m.$prax = p.$id";
> > >
> > > Normally, I print out the information like this:
> > >
> > > Dr. med. John Doe // $title, $preName, $sureName
> > > (shared practice) // description
> > > Elmstreet 13 // $street
> > > 666 Amityville 23 // $zip, $town
> > > phone: 0049 - 815 - 4711 // $phone
> > >
> > > Okay. Now some of these folks are sharing a practice
> > > ($description in the above code == "shared practice").
> > >
> > > I would like to have these grouped together like this:
> > >
> > > Dr. med. John Doe // $title, $preName, $sureName
> > > Dr. med. Allan Smithee
> > > (shared practice) // description
> > > Elmstreet 13 // $street
> > > 666 Amityville 23 // $zip, $town
> > > phone: 0049 - 815 - 4711 // $phone
> > >
> > > I am starting to get a little confused right here and right now.
> > > This is the reason for being THIS detailed, too ;) Don't want to
> > > mix anything up.
> > >
> > > How would you achieve this goal fastest and "best"?
> > > Creating a temp array and checking for double $description-s
> > > which I store in the temp array and delete from the original one?
> > > Or check this with the original array? How?
> > > I found functions to get the value for one key in a hash, but not
> > > for several values with the same key...
> > >
> > > Sorry for the confusion, starting to get fuzzy...
> > >
> > > Any ideas, hints?
> > >
> > > Thanx alot,
> > >
> > > Kiko
> > >
> > > --
> > > It's not a bug, it's a feature.
> > > christoph starkmann
> > > mailto:[EMAIL PROTECTED]
> > > http://www.gruppe-69.com/
> > > ICQ: 100601600
> > > --
> >
> >
>
>



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to