0

私はphpの初心者で、これはばかげた質問かもしれません。select と where クエリを作成しました。しかし、id (index.php?id=2) をクリックすると、データベースにあるすべての詳細 (title、omschrijving、soort、foto1、foto1、および prijs) を含む新しいページが開きます。

            <?php

            function tonenTabel(){

            include "connect.int.php";


            if ($_GET) //als er iets in meegestuurd in de url (bijv. studenten.php?id=3)
            {
                if (isset($_GET["id"])) //check of dit dan id is wat is meegestuurd
                {
                $id = $_GET["id"]; //ophalen van de waarde van id
                }
            }


            //maken select query
            $query = "
                SELECT
                    menuid, soort, titel, prijs
                FROM
                    gerechten
                ";

            if (isset($id)) //bestaat id en is deze gevuld dan filteren op id
            {
                $query.= "
                WHERE
                menuid = $id
                ";
            }

            //uitvoeren select query
            $result = mysqli_query ($link, $query);

            //tellen aantal gevonden rijen
            $total = mysqli_num_rows($result);

            if ($total > 0)
            {
                //tonen alle gegevens
                $table = "
                <table>
                <tr>
                    <th>ID</th>
                    <th>Soort</th>
                    <th>Titel</th>
                    <th>Prijs</th>

                </tr>
                ";
                while ($row = mysqli_fetch_assoc($result)){
                $table .= "<tr>";
                foreach ($row as $key => $value)
                {
                    if ($key == "foto")
                    {
                    $table .="<td><img src='$value' /></td>"; 
                    }
                    elseif ($key == "menuid")
                    {
                    $table .="<td><a href='index.php?id=$value'></a>$value</td>"; 
                    }
                    else
                    {
                    $table .="<td>$value</td>";         
                    }

                }
                $table .= "</tr>";
                }
                $table .="</table>";
                echo $table;
                echo " Totaal ". $total . " gerechten";
            }

            }

            function tonenLijst(){


                echo "<p>kies een student</p>";
                    $form= ' <form action="index.php" method="get">';
                        $form.= '<select name = "id" >';
                            $form.= '<option>1</option>';
                            $form.= '<option>2</option>';
                            $form.= '<option>3</option>';
                            $form.= '<option>4</option>';
                            $form.= '<option>id</option>';
                            $form.= '<input type="submit">';
                        $form.= '</select>';
                    $form.= '</form>';

                        echo $form ;



                }

            ?>
4

1 に答える 1

4

プロパティtargetを次のように指定します_blank

<a href='index.php?id=$value' target="_blank">$value</a>

$valueそして、アンカータグの間に何も入れませんでした....それらのアンカータグの間に入れる必要があると思います。

あなたのコメントによると、クエリはすべての列を選択している必要があります

$query = " SELECT * FROM gerechten ";

また、mysql_*関数は推奨であるため使用しないでください。代わりに、関数を使用mysqli_*するか、PDO statements

于 2013-06-24T08:35:18.017 に答える