如何从PHP中的复杂数组中提取数据?

发布于 2024-10-06 18:48:04 字数 758 浏览 0 评论 0原文

我正在以以下形式创建帖子:

while ( $tracks = mysql_fetch_array($trackstring) ){
    $tracks = mysql_fetch_array($trackstring) ){
echo "<li class="tracklist">
<input type="text" name="tracknum-[$tracks['song_id']]" 
value="".$tracks['song_tracknumber']"/> 
<input type="text" name="trackname[$tracks['song_id']]" 
value="".$tracks['song_title'].""/> 
</li>";
    }

它正在创建一个看起来像这样的 $_POST 数组:

Array ( [tracknum] => Array ( [13] => 1 [14] => 2 [15] => 3 ) [trackname] => Array ( [13] => One Beat [14] => Faraway [15] => Oh! ) 

本质上我想要
1 - 一拍即可进入 id=13 2 - 遥远地进入 id=14

我可以看到那里的所有数据,但我不太确定如何操作它......我对数组不太热衷。如何使用涉及 id 值的 $_POST['??????'] 引用这些

I am creating the post in the following form:

while ( $tracks = mysql_fetch_array($trackstring) ){
    $tracks = mysql_fetch_array($trackstring) ){
echo "<li class="tracklist">
<input type="text" name="tracknum-[$tracks['song_id']]" 
value="".$tracks['song_tracknumber']"/> 
<input type="text" name="trackname[$tracks['song_id']]" 
value="".$tracks['song_title'].""/> 
</li>";
    }

it's creating a $_POST array that looks like this:

Array ( [tracknum] => Array ( [13] => 1 [14] => 2 [15] => 3 ) [trackname] => Array ( [13] => One Beat [14] => Faraway [15] => Oh! ) 

essentially I want
1 - One Beat to go into id=13
2 - Faraway to go into id=14

I can see all the data there, but I'm not really sure how to manipulate it... I'm not so hot with arrays. How do I reference these with $_POST['????'] involving the id values

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

蓬勃野心 2024-10-13 18:48:05

用于

$_POST['trackname'][13]

获得“One Beat”。

use

$_POST['trackname'][13]

to get "One Beat".

胡大本事 2024-10-13 18:48:05

尝试使用

print_r($_POST);

这将为您的 POST 提供清晰的缩进,以便您可以轻松地浏览它。

然后,如果您仍然需要帮助,请编辑您的问题,使其听起来更清晰。

Try to use

print_r($_POST);

That will give you your POST clearly indented, so you can easily navigate through it.

And then, edit your question to sound more clear, if you still need help.

宣告ˉ结束 2024-10-13 18:48:05

非常感谢 sitepoint 论坛上的 cranial-bore :)

$tracknum = $_POST['tracknum'];
$trackname = $_POST['trackname'];
if(count($tracknum) == count($trackname)){ // make sure both the array have same elements
    foreach($tracknum as $songid=>$tracknumber){
        $song_tracknumber = $tracknum[$songid];
        $song_title = $trackname[$songid];
        $sql = "UPDATE songs SET song_tracknumber='$song_tracknumber', song_title='$song_title' WHERE song_id=$songid";
    }
}  

big thanks to cranial-bore at the sitepoint forums :)

$tracknum = $_POST['tracknum'];
$trackname = $_POST['trackname'];
if(count($tracknum) == count($trackname)){ // make sure both the array have same elements
    foreach($tracknum as $songid=>$tracknumber){
        $song_tracknumber = $tracknum[$songid];
        $song_title = $trackname[$songid];
        $sql = "UPDATE songs SET song_tracknumber='$song_tracknumber', song_title='$song_title' WHERE song_id=$songid";
    }
}  
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文