0

今、私はforeachサイクルと配列に大きな問題を抱えています。

txtファイルに保存されている値を2列(codice、giacenza)のMySQLテーブルに挿入したいと思います。これはtxtファイルの例です:

$ S0AE7375 $ L01 $ F003 $ T017 $ B00000002 $ I001 $ G00201 $ R00000000 $ O03 $ N
$ S0AE8909 $ L01 $ F001 $ T017 $ B00000006 $ I001 $ G00201 $ R00000000 $ O03 $ N

構文解析を使用して、私が検索したものを取得しました。値がcodiceとgiacenzaの単純なファイルです。これはparsin.phpファイルです:

<?php
 $file = file_get_contents("./upload/magazzino.txt");
 $file2 = str_replace ("B00000", "", $file);
 $file3 = str_replace ('$S', '$', $file2);
 $rows = explode("\n", $file3);

 foreach($rows as $row) { 
     $linee  = explode ("$", $row);
     echo $linee[1].$linee[5]. "<br>\n";
    }
?>

echoループ内でinを使用して、foreach何が発生し、どちらが結果であるかを確認しました。結果は次のとおりです。

0AE7375 002
0AE8909 006

1つ目はcodice(0AE7375、ecc ..)で、2つ目はgiacenza(002、ecc ..)ですが、codiceとgiacenzaは単一の配列ではなく、2つの異なる配列です。コーデックスはギアセンザに対応しているので、array_combineを使用することを考えましたが、正しいかどうかはわかりません。

最後に、insertメソッドを使用してSQLテーブルに値を挿入する必要があります。

ハニョネはこの問題を解決するアイデアを持っていますか?私はさまざまな解決策を試しましたが、foreachサイクルで使用する必要があるかどうかわかりません。

私はこれを試しましたが、機能しません:

mysql_query("INSERT INTO prodotti
         ($linee[1] , $linee[5] )
         VALUES
         ('codice', 'giacenza' )") OR DIE(mysql_error());
4

1 に答える 1

1

mysql insertの構文は次のとおりです:(およびがデータベースのフィールド名であるとINSERT INTO prodotti(codice, giacenza) values ('val1', 'val2')想定)codicegiacenza

于 2013-02-28T10:21:12.773 に答える