Php 如何从foreach(数据库数据(PDO))获取特定元素

Php 如何从foreach(数据库数据(PDO))获取特定元素,php,html,css,Php,Html,Css,我正在使用foreach写下我的PDO结果中的所有元素(我正在对DB提出一个问题,它会返回一些数据-->大量数据)。我把它们都写在表中(基本上它看起来像管理员界面,如果你需要想象的话,当你在CMS中是管理员并且想看到所有的帖子或文章时) 问题是,当我想从该表中选择某一行时(例如:我想选择第41行的文章《手机新时代》),然后打开这篇文章(将有一些选项,如编辑、删除等),它选择第一个元素(第一个写的文章->最低ID)。你能帮我吗 foreach($resultedArticle as $data){

我正在使用
foreach
写下我的PDO结果中的所有元素(我正在对DB提出一个问题,它会返回一些
数据-->大量数据
)。我把它们都写在表中(基本上它看起来像管理员界面,如果你需要想象的话,当你在CMS中是管理员并且想看到所有的帖子或文章时)

问题是,当我想从该表中选择某一行时(例如:我想选择第41行的文章《手机新时代》),然后打开这篇文章(将有一些选项,如编辑、删除等),它选择第一个元素(第一个写的
文章->最低ID
)。你能帮我吗

foreach($resultedArticle as $data){
    $short_content = substr($data["Content"], 0, 30);
    $short_description = substr($data["Description"], 0, 30);
    echo "                      
        <tr>
            <td>". $data['ID'] ."</td>
            <td>". $data['Name'] ."</td>
            <td>". strip_tags($short_description) ."...</td>
            <td>". strip_tags($short_content) ."...</td>
            <td>". $data['Type']. "</td>
            <td>". $data['Created'] ." </td>
            <td>". $data['Modified'] ."</td>
            <td>". $data['Status'] . "</td>
            <td> <a href='#modal1' class='modal-trigger' title='Zobrazit detaily zápisu'><i class='material-icons'>fullscreen</i></a></td>
            <td> <a href='#modal_edit' title='Editovat zápis'><i class='material-icons'>mode_edit</i></a></td>
            <td> <a href='../../core.php?action=deleteArticle&ID=". $data['ID'] ."' title='Smazat zápis'><i class='material-icons'>clear</i></a></td>
        </tr>
        <div id='modal_edit' class='modal modal-fixed-footer'>
                    <div class='modal-content'>
                      <h4>Edit your article</h4>

                            <div class='row'>
                                  <form class='col s12' method='POST' action='../../core.php?action=editArticle'>
                                      <div class='row'>
                                        <div class='input-field col s6'>
                                          <input name='name' id='name' type='text' class='validate' placeholder='". $data["Name"] ."'/>
                                          <label for='name'>Název</label>
                                        </div>
                                      </div>
                                      <div class='row'> 
                                        <div class='input-field col s6'>
                                          <input name='description' id='description' type='text' class='validate' placeholder='". $data["Description"] ."'/>
                                          <label for='description'>Popisek</label>
                                        </div>
                                      </div>
                                      <div class='row'>
                                        <input id='ID' name='ID' type='hidden' value='". $data["ID"] ."'/>
                                        <button id='submit' class='btn waves-effect waves-light right' type='submit' name='action'> Upravit projekt </button>
                                      </div>
                                  </form>
                            </div>
                        </div>
                        <div class='modal-footer'>
                            <a href='#!'' class='modal-action modal-close waves-effect waves-green btn-flat ''>Zrušit</a>
                        </div>
                    </div>
        ";
foreach($resultedArticle作为$data){
$short_content=substr($data[“content”],0,30);
$short_description=substr($data[“description”],0,30);
回声“
“$data['ID']”
“$data['Name']”
“.strip_标签($short_description)。”。。。
“.strip_标签($short_内容)。”。。。
“$data['Type']”
“$data['Created']”
“$data['Modified']”
“$data['Status']”
编辑你的文章
纳泽夫
波比塞克
Upravit项目
";

编辑:您可以注意到我在同一个foreach中创建的模式窗口(表单)没有问题吗?

请尝试我在每个模式中添加的代码
ID
基本上,这不是使用modal的正确方法,而不是在循环之外只创建一个模型,并用jQuery或javascript填充所有数据,因为现在它可以工作了

foreach($resultedArticle as $data){

    $modal_id = "#modal_edit_$data['ID']";         

    $short_content = substr($data["Content"], 0, 30);
    $short_description = substr($data["Description"], 0, 30);
    echo "                      
        <tr>
            <td>". $data['ID'] ."</td>
            <td>". $data['Name'] ."</td>
            <td>". strip_tags($short_description) ."...</td>
            <td>". strip_tags($short_content) ."...</td>
            <td>". $data['Type']. "</td>
            <td>". $data['Created'] ." </td>
            <td>". $data['Modified'] ."</td>
            <td>". $data['Status'] . "</td>
            <td> <a href='#modal1' class='modal-trigger' title='Zobrazit detaily zápisu'><i class='material-icons'>fullscreen</i></a></td>
            <td> <a href='".$modal_id."' title='Editovat zápis'><i class='material-icons'>mode_edit</i></a></td>
            <td> <a href='../../core.php?action=deleteArticle&ID=". $data['ID'] ."' title='Smazat zápis'><i class='material-icons'>clear</i></a></td>
        </tr>
        <div id='" .$modal_id. "' class='modal modal-fixed-footer'>
            <div class='modal-content'>
                <h4>Edit your article</h4>
                <div class='row'>
                    <form class='col s12' method='POST' action='../../core.php?action=editArticle'>
                        <div class='row'>
                            <div class='input-field col s6'>
                                <input name='name' id='name' type='text' class='validate' placeholder='". $data["Name"] ."'/>
                                <label for='name'>Název</label>
                            </div>
                        </div>
                        <div class='row'> 
                            <div class='input-field col s6'>
                                <input name='description' id='description' type='text' class='validate' placeholder='". $data["Description"] ."'/>
                                <label for='description'>Popisek</label>
                            </div>
                        </div>
                        <div class='row'>
                            <input id='ID' name='ID' type='hidden' value='". $data["ID"] ."'/>
                            <button id='submit' class='btn waves-effect waves-light right' type='submit' name='action'> Upravit projekt </button>
                        </div>
                    </form>
                </div>
            </div>
            <div class='modal-footer'>
                <a href='#!'' class='modal-action modal-close waves-effect waves-green btn-flat ''>Zrušit</a>
            </div>
        </div>
    ";
foreach($resultedArticle作为$data){
$modal_id=“#modal_edit_$data['id']”;
$short_content=substr($data[“content”],0,30);
$short_description=substr($data[“description”],0,30);
回声“
“$data['ID']”
“$data['Name']”
“.strip_标签($short_description)。”。。。
“.strip_标签($short_内容)。”。。。
“$data['Type']”
“$data['Created']”
“$data['Modified']”
“$data['Status']”
编辑你的文章
纳泽夫
波比塞克
Upravit项目
";

id
对于每个modaloh都应该是唯一的,所以我必须用特定的类或id生成模态,然后调用特定的模态窗口,对吗?您的模态代码不应该是循环的,您可以一次保存它,并且可以在单击操作按钮(如使用javascript编辑或全屏)时打开它。不,抱歉,它甚至不是循环的现在打开模式窗口,但是id=“modal\u edit\u$data['id']”的解决方案真的很酷!没错,我已经更新了我的代码并接受了答案,如果这对你有帮助的话。好主意,但是模式窗口不会打开……如果没有这个动态id,它就打开了,我通过class=“modal”调用它,这并没有改变,嗯