PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   MySQLi/PDO/(MySQL) (http://www.selfphp.de/forum/forumdisplay.php?f=22)
-   -   Abfrage (http://www.selfphp.de/forum/showthread.php?t=7926)

Killas 11.06.2004 13:09:42

Abfrage
 
Hi Leute,

ein kleines Problem habe ich mir meinen Tabellen.

PHP-Code:


CREATE TABLE 
`ft_teams` (
  `
idint(9NOT NULL auto_increment,
  `
namevarchar(50NOT NULL default '',
  
PRIMARY KEY  (`id`)
);

CREATE TABLE `ft_games` (
  `
idint(9NOT NULL auto_increment,
  `
team1int(9NOT NULL default '0',
  `
team2int(9NOT NULL default '0',
  `
resultchar(3NOT NULL default '',
   
PRIMARY KEY  (`id`)
);



CREATE TABLE `ft_gametips` (
  `
idint(9NOT NULL auto_increment,
  `
gameint(9NOT NULL default '0',
  `
tipchar(3NOT NULL default '',
  `
userint(9NOT NULL default '0',
  
PRIMARY KEY  (`id`)
); 

In der Tabelle Gametips speichere ich nur die id vom game. Das Problem ist jetzt bei der Ausgabe. Ich bekomme es nicht hin zu einem Tipp die richtige Mannschafft anzeigen zu lassen.

Momentan sieht mein script aus wie folgt:

PHP-Code:

<?
    if ( !isset($conn) )
    die("Zugriff verweigert");
    
    $sql = "SELECT * FROM ft_gametips AS gametips WHERE user = $details";
    $res = mysql_query($sql, $conn);
    
    $sql1 = "SELECT * FROM ft_users WHERE id = $details";
    $res1 = mysql_query($sql1, $conn);
    $row1 = mysql_fetch_object($res1);

    $sql2 = "SELECT * FROM ft_games AS game";
    $res2 = mysql_query($sql2, $conn);
    $row2 = mysql_fetch_object($res2);

echo("<h3>".$row1->firstname." ".$row1->name."</h3>
<table>
    <tr>
        <td width="10%"><b>Nr.</b></td>
        <td width="25%"><b>Team1</b></td>
        <td width="25%"><b>Team2</b></td>
        <td width="10%"><b>Tip</b></td>
    </tr>");

    while ( $row = mysql_fetch_row($res) )
    {
        echo("<tr>
        <td width="10%">".$row[0]."</td>
        <td width="25%">");
                $sql3 = "SELECT name FROM ft_teams WHERE id=".$row2->team1;
                $result3 = mysql_query($sql3, $conn);
                $row3 = mysql_fetch_row($result3);
                echo($row3[0]);
        echo("    </td>
        <td width="25%">");
                $sql4 = "SELECT name FROM ft_teams WHERE id=".$row2->team2;
                $result4 = mysql_query($sql4, $conn);
                $row4 = mysql_fetch_row($result4);
                echo($row4[0]);
echo("    </td>
                <td width="10%">".$row[2]."</td>
        </tr>");
    }
echo("</table>");
?>

Besser habe ich es einfach nicht hinbekommen :( Ergebniss von diesem Script: Er Zeigt nur den ersten Eintrag richtig an, sonst nichts. Die darauf folgenden Begegnungen zeigt er gleich.

xabbuh 11.06.2004 13:40:17

PHP-Code:

//TEAMNAMEN IN ARRAY SPEICHERN (KEY: ID DES TEAMS)
$result=mysql_query("SELECT id, name FROM ft_teams ORDER BY id");
while(
$row=mysql_fetch_array($result)){
    
$teams[$row['id']]=$row['name'];

//SPIELE IN ARRAY SPEICHERN (KEY: ID DES SPIELS)
$result=mysql_query("SELECT id, team1, team2 FROM ft_games ORDER BY id");
while(
$row=mysql_fetch_array($result)){
    
$spiele[$row['id']]=$teams[$row['team1']] . " - " $teams[$row['team2']];
    }

//TIPS IN TABELLE AUSGEBEN

echo "<table>";
echo 
"<tr>";
echo 
"<td>Spiel</td>";
echo 
"<td>Tip</td>";
echo 
"</tr>";

$result=mysql_query("SELECT game, tip FROM ft_gametips WHERE user='$details'");
while(
$row=mysql_fetch_array($result)){
    echo 
"<tr>";
    echo 
"<td>" $spiele[$row['game']] . "</td>";
    echo 
"<td>" $row['tip'] . "</td>";
    echo 
"</tr>";
    }

echo 
"</table>"


Killas 11.06.2004 14:01:31

Hi xabbuh,

erstmal vielen Dank für deine schnelle Hilfe, allerdings funktioniert das komischerweise nicht.

Parse error: parse error, unexpected $end in E:webappsLocalUseruser002ftgametips.php on line 30

Ich habe nichts am Code geändert, außer ft_gametips richtig geschrieben ;)

MFG Killas

PS: Hier seht ihr das Ergebnis

Killas 11.06.2004 14:35:07

Ok, jetzt gehts, nochmals danke. Hier der korrekte Code

PHP-Code:

<?
    //TEAMNAMEN IN ARRAY SPEICHERN (KEY: ID DES TEAMS) 
    $result=mysql_query("SELECT id, name FROM ft_teams ORDER BY id",$conn); 
    while($row=mysql_fetch_array($result)){ 
    $teams[$row['id']]=$row['name']; 
    }

    //SPIELE IN ARRAY SPEICHERN (KEY: ID DES SPIELS) 
    $result=mysql_query("SELECT id, team1, team2 FROM ft_games ORDER BY id",$conn); 
    while($row=mysql_fetch_array($result)){ 
    $spiele[$row['id']]=$teams[$row['team1']] . " - " . $teams[$row['team2']]; 
    } 
echo "<table>"; 
echo "<tr>"; 
echo "<td>Spiel</td>"; 
echo "<td>Tip</td>"; 
echo "</tr>"; 

//TIPS IN TABELLE AUSGEBEN

$result=mysql_query("SELECT game, tip FROM ft_gametips WHERE user='$details'", $conn); 
while($row=mysql_fetch_array($result)){ 
echo "<tr>"; 
echo "<td>" . $spiele[$row['game']] . "</td>"; 
echo "<td>" . $row['tip'] . "</td>"; 
echo "</tr>"; 

echo "</table>";
?>



Alle Zeitangaben in WEZ +2. Es ist jetzt 13:06:03 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.