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”调用它,这并没有改变,嗯