Avatar billede tras Juniormester
17. juni 2005 - 09:43 Der er 11 kommentarer og
1 løsning

Hent data fra 2 steder i databasen- hvordan

Hej jeg skal bruge info fra to steder i min DB både fra host_users og host_lan.

Men hvordan får jeg dem til at arbejde sammen og vise deres informationer.

Jeg kan sagtens få 1 til at virke men når der er 2 i et stykke kode så laver den fejl.

+ Når jeg har 2 så viser den ikke den bottom jeg laver ud over nederst ved kun en af de 3 steder den skal være her er koden og i kan logge ind og se hvordan det ser ud her. www.lan-host.com - login - join lan.
login name er test pass er test tryk ikke på noget som i ikke skal. tryk kun inde i join lan. plz

her er koden
jeg vil gerne havde saft en
<?
                $SQL = "SELECT * FROM host_users WHERE user_name = '" . $_SESSION['logged_name'] . "' LIMIT 1";
                $loadin = mysql_query($SQL) or die("There is an Error in the database");
                while ($Get = mysql_fetch_object($loadin)){
            ?>
ind i det stukke så den kan tage et bruger navn med i databasen og et navn fra lans...

<?
}elseif($_GET['s'] == "join_lans"){
?>
            <tr align="center" bgcolor="#999999">
                <td bgcolor="D6D6D6" width="100%" style="border: 1px black solid;" colspan="2">
                    Join Lans
                </td>
            </tr>
            <form action="insert.php" method="post">
            <input type="hidden" value="insert host_join" name="do">
            <?
                $SQL = "SELECT * FROM host_lan ORDER BY `id` DESC";
                $loadin = mysql_query($SQL) or die("There is an Error in the database");
                while ($Get = mysql_fetch_object($loadin)){
            ?>
            <tr>
                <td bgcolor="D6D6D6" width="60%"><?=$Get->name?></td>
                <td bgcolor="D6D6D6" width="40%"><input name="name" type="text" style="font-size:9px; height:20px; width:200px; background-color: D6D6D6;" readonly="" value="<?=$Get->pn?>" maxlength="20"></td>
            </tr>
            <tr>
                <td colspan="2" bgcolor="EAEAEA"><strong>Lan Info:</strong><br><?=$Get->info?></td>
            </tr>
            <tr>
                <td colspan="2" bgcolor="EAEAEA"><strong>Location:</strong> <?=$Get->location?></td>
            </tr>
            <tr>
                <td width="60%" bgcolor="D6D6D6">
                    Start Date: <?=$Get->start_date?> (M-D-Y)
                </td>
                <td width="40%" bgcolor="D6D6D6">
                    <?=$Get->gmt?>
                </td>
            </tr>
            <tr>
                <td colspan="2" align="center"><input type="submit" style="font-size:9px; height:20px;" value="Join lan"></td>
            </tr>
                <td>&nbsp;
       
                </td>
            </tr>
            <input type="hidden" value="<?=$_SESSION['yes']?>">
            <? $_SESSION['secret'] = "wtf/!"?>
            </form>
            <?
                }
                Db::Conn(close);
            ?>
Avatar billede Slettet bruger
17. juni 2005 - 10:10 #1
Her skal du bruge joins. jeg kan lige prøve at lave en query til dig.
Det er aldrig en god idé at bruge SELECT *, prøv at se om du ikke kan skrive alle kolonnenavnene.
Avatar billede Slettet bruger
17. juni 2005 - 10:14 #2
$SQL = "
SELECT
    host_lan.info as info,
    host_lan.location, as location,
    host_lan.pn as pn,
    host_users.name as username,
FROM
    host_users
    INNER JOIN host_lan ON host_user.id = host_lan.brugerid
WHERE
    user_name='". $_SESSION['logged_name'] ."'
LIMIT 1";


Der er mange oplysninger jeg ikke har haft adgang til, men jeg håber at du kan se idéen
Avatar billede Slettet bruger
17. juni 2005 - 10:17 #3
Der er mere info om joins her: http://www.keithjbrown.co.uk/vworks/mysql/mysql_p5.shtml, og så kan du selvfølgelig kigge på google hvis det ikke er nok ;)
Avatar billede tras Juniormester
17. juni 2005 - 10:18 #4
kan jeg godt men ser lidt ... ud.

kan man ikke fe select til at virke.... kan man ikke gøre noget ved
$loadin = mysql_query($SQL) or die("There is an Error in the database");
så dan kan
Avatar billede Slettet bruger
17. juni 2005 - 10:37 #5
Du skal ikke kigge på, hvordan dit script ser ud. Det er funktionaliten der gælder (i hvert fald i det her tilfælde). Og det er altid en god idé selv at vælge alle kolonnerne der skal utrækkes data fra.

Du behøver ikke "as" i alle rækkerne, men det giver større frihed, da du så selv kan navngive dine kolonner "midlertidigt" til utrækket.

Jeg forstår ikke det sidste du skriver..
Avatar billede tras Juniormester
17. juni 2005 - 12:15 #6
Kan ikke få det til at virke there is an erro in the Db           

<tr align="center" bgcolor="#999999">
                <td bgcolor="D6D6D6" width="100%" style="border: 1px black solid;" colspan="2">
                    Join Lans
                </td>
            </tr>
            <form action="insert.php" method="post">
            <input type="hidden" value="insert host_join" name="do">
            <?
                $SQL = "
SELECT
    host_lan.info as info,
    host_lan.location, as location,
    host_lan.pn as pn,
    host_users.name as username,
FROM
    host_users
    INNER JOIN host_lan ON host_user.id = host_lan.brugerid
WHERE
    user_name='". $_SESSION['logged_name'] ."'
LIMIT 1";
                $loadin = mysql_query($SQL) or die("There is an Error in the database");
                while ($Get = mysql_fetch_object($loadin)){
            ?>
            <tr>
                <td bgcolor="D6D6D6" width="60%"><?=$Get->name?></td>
                <td bgcolor="D6D6D6" width="40%"><input name="name" type="text" style="font-size:9px; height:20px; width:200px; background-color: D6D6D6;" readonly="" value="<?=$Get->pn?>" maxlength="20"></td>
            </tr>
            <tr>
                <td colspan="2" bgcolor="EAEAEA"><strong>Lan Info:</strong><br><?=$Get->info?></td>
            </tr>
            <tr>
                <td colspan="2" bgcolor="EAEAEA"><strong>Location:</strong> <?=$Get->location?></td>
            </tr>
            <tr>
                <td width="60%" bgcolor="D6D6D6">
                    Start Date: <?=$Get->start_date?> (M-D-Y)
                </td>
                <td width="40%" bgcolor="D6D6D6">
                    <?=$Get->gmt?>
                </td>
            </tr>
            <tr>
                <td bgcolor="EAEAEA" colspan="2" align="center"><input type="submit" style="font-size:9px; height:20px;" value="Join lan <?=$Get->user_name?>"></td>
            </tr>
                <td>&nbsp;
       
                </td>
            </tr>
            <input type="hidden" value="<?=$_SESSION['yes']?>">
            <? $_SESSION['secret'] = "wtf/!"?>
            </form>
            <?
                }
                Db::Conn(close);
            ?>
Avatar billede Slettet bruger
17. juni 2005 - 16:32 #7
<tr align="center" bgcolor="#999999">
                <td bgcolor="D6D6D6" width="100%" style="border: 1px black solid;" colspan="2">
                    Join Lans
                </td>
            </tr>
            <form action="insert.php" method="post">
            <input type="hidden" value="insert host_join" name="do">
            <?
                $SQL = "
SELECT
    host_lan.info as info,
    host_lan.location, as location,
    host_lan.pn as pn,
    host_users.name as username,
FROM
    host_users
    INNER JOIN host_lan ON host_user.id = host_lan.brugerid
WHERE
    user_name='". $_SESSION['logged_name'] ."'
LIMIT 1";
                $loadin = mysql_query($SQL) or die(mysql_error() ."<br>".nl2br($sql));
                while ($Get = mysql_fetch_object($loadin)){
            ?>
            <tr>
                <td bgcolor="D6D6D6" width="60%"><?=$Get->name?></td>
                <td bgcolor="D6D6D6" width="40%"><input name="name" type="text" style="font-size:9px; height:20px; width:200px; background-color: D6D6D6;" readonly="" value="<?=$Get->pn?>" maxlength="20"></td>
            </tr>
            <tr>
                <td colspan="2" bgcolor="EAEAEA"><strong>Lan Info:</strong><br><?=$Get->info?></td>
            </tr>
            <tr>
                <td colspan="2" bgcolor="EAEAEA"><strong>Location:</strong> <?=$Get->location?></td>
            </tr>
            <tr>
                <td width="60%" bgcolor="D6D6D6">
                    Start Date: <?=$Get->start_date?> (M-D-Y)
                </td>
                <td width="40%" bgcolor="D6D6D6">
                    <?=$Get->gmt?>
                </td>
            </tr>
            <tr>
                <td bgcolor="EAEAEA" colspan="2" align="center"><input type="submit" style="font-size:9px; height:20px;" value="Join lan <?=$Get->user_name?>"></td>
            </tr>
                <td>&nbsp;
       
                </td>
            </tr>
            <input type="hidden" value="<?=$_SESSION['yes']?>">
            <? $_SESSION['secret'] = "wtf/!"?>
            </form>
            <?
                }
                Db::Conn(close);
            ?>

Hvad siger den der
Avatar billede Slettet bruger
18. juni 2005 - 10:15 #8
..? Hvilken fejl får du her?
Avatar billede tras Juniormester
20. juni 2005 - 12:54 #9
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'as location, host_lan.pn as pn, host_users.name as us
Avatar billede tras Juniormester
20. juni 2005 - 12:59 #10
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM host_users INNER JOIN host_lan ON host_user.id

der var et , et forkert sted men nu kom denne fejl
Avatar billede tras Juniormester
21. juni 2005 - 08:22 #11
okok nu fik jeg min kode til at virke men når jeg tæster med en java::alert så viser den at der er 0 i sql'en.... ????

<?
          $SQL = "
        SELECT
            host_lan.info as info,
            host_lan.location as location,
                    host_lan.pn as pn,
                    host_users.user_name as user_name
                FROM
                    host_users
                    INNER JOIN host_lan ON host_users.id = host_lan.id
                WHERE
          user_name='".$_SESSION['logged_name']."'
        LIMIT 1";
        $loadin = mysql_query($SQL) or die(Java::Alert("Mysql Error.: ".mysql_error()));
        while ($Get = mysql_fetch_object($loadin)){
      ?>
            <tr align="center" bgcolor="#999999">
        <td bgcolor="D6D6D6" width="100%" style="border: 1px black solid;" colspan="2">
          Join Lans
        </td>
      </tr>
            <form action="insert.php" method="post">
            <input type="hidden" value="insert host_join" name="do">
            <tr>
                    <td bgcolor="D6D6D6" width="60%"><?=$Get->name?></td>
                    <td bgcolor="D6D6D6" width="40%"><input name="name" type="text" style="font-size:9px; height:20px; width:200px; background-color: D6D6D6;" readonly="" value="<?=$Get->pn?>" maxlength="20"></td>
            </tr>
            <tr>
                    <td colspan="2" bgcolor="EAEAEA"><strong>Lan Info:</strong><br><?=$Get->info?></td>
            </tr>
            <tr>
                    <td colspan="2" bgcolor="EAEAEA"><strong>Location:</strong> <?=$Get->location?></td>
            </tr>
            <tr>
                    <td width="60%" bgcolor="D6D6D6">
                            Start Date: <?=$Get->start_date?> (M-D-Y)
                    </td>
                    <td width="40%" bgcolor="D6D6D6">
                            <?=$Get->gmt?>
                    </td>
            </tr>
            <tr>
                    <td bgcolor="EAEAEA" colspan="2" align="center"><input type="submit" style="font-size:9px; height:20px;" value="Join lan <?=$Get->user_name?>"></td>
            </tr>
            <tr>
                <td>&nbsp;

                </td>
        </tr>
        <input type="hidden" value="<?=$_SESSION['yes']?>">
        <? $_SESSION['secret'] = "wtf/!"?>
        </form>
        <?
                }
                Db::Conn(close);
        ?>
Avatar billede tras Juniormester
22. juni 2005 - 10:22 #12
...
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