2012-05-04 22 views
1

私のforeachループで複数のファイルを開くのに問題があります。Foreachループは1回だけループしますか?

私のforeachループは、最初のアイテム番号に対して1回だけ実行されます。 foreachループが実行されると、 "api.php"ページに移動しますが、停止してforeachループに戻って次の項目番号を取得しません。データベースのアイテム番号をすべて調べるにはどうすればよいですか?

私は何とかcURLを使用しますか?

おかげ

は、ここに私のコードです:

$itemnumber = array("".$result['item_number'].""); 

foreach ($itemnumber as $item_number) { 

echo "<form method=\"post\" action=\"api.php\" name=\"ChangeSubmit\" id=\"ChangeSubmit\">"; 
echo "<input type=\"text\" name=\"item_number\" value=\"{$item_number}\" />"; 

echo "<script type=\"text/javascript\"> 
function myfunc() { 
var frm = document.getElementById(\"ChangeSubmit\"); 
frm.submit(); 
} 
window.onload = myfunc; 
</script></form>"; 



} 
+9

アレイには1つのアイテムしかありません。 – hakre

+4

このスクリプトは、あなたがこの問題を修正すると非常に、非常に不幸になるでしょう。 –

+1

@ IgnacioVazquez-Abrams:スクリプト名はwife.phpです。 –

答えて

3

foreachは大丈夫に見えますが、あなたはそれが複数の番号を反復させたい場合は、複数を提供する必要があります。今は1つの番号だけを提供しています。

+0

'item_number'はデータベース内のフィールド名で、複数の番号を取得しています。私がこれをエコーすると、データベースのアイテム番号がすべて取得されますが、「アイテム番号」が「amazon.php」に送信されると、次のアイテム番号を取得するために戻ってこないのです。 – myladeybugg

+0

@myladeybugg:あなたのDB呼び出しが '1,2,3,4'を返すからといって、PHPがそれを個々のIDとして見ているわけではありません。単一の文字列が表示されます。 –

+0

それは、それがエコーを通して出てくる方法で、それが個性化されているように私に見えます。項目番号
の各1つで、入力フィールドがあります。エコーが複数回実行されていることを示しています---多分私は間違っていると思いますか?また、最初のアイテム番号が正常に検索されてDBに追加されます。そうでなければ、すべての数字が一緒になってAPI検索でエラーが発生する可能性があります。ありがとう! – myladeybugg

0

実際には、アレイには1つのアイテムしかありません。それは一度だけループしています。

あなたが提供する、二重二重引用符があまりにもコードでは意味を持たない、ので、あなたのコード$itemnumber = array("".$result['item_number']."");

$itemnumber = array($result['item_number']); 

に変換します。だから、最後に配列には1つのアイテムしかありません。

+0

おっと、私はより具体的であったはずです。 $ result ['item_number']はデータベースから取得されています。格納されているすべてのアイテム番号を取り出し、それらをvarに割り当てます。エコーでは、適切なループのように見える、個々の項目番号がエコーされています。エコーごとに1つの項目番号とそれに付随する入力フィールドがあるように見えるので、それとも私はそれを逃していますか?ありがとう! – myladeybugg

+0

@myladeybugg、コード全体を表示できますか – Starx

関連する問題