-1

データベースに1行を保存する方法がわかりません... Webからファイルがあり、CURLで彼を連れて行きます。そのファイルは次のようになります。

www.example.com/file.txt

REFALIAS http:// .example.com/data/ /* http://example.com/data/?q= $2

REFALIAS http:// .example.com/data/ /* http://example.com/data/?q= $2

REFALIAS http:// .example.com/data/ /* http://example.com/data/?q= $2

REFALIAS http:// .example.com/data/ /* http://example.com/data/?q= $2

Web からのすべてのコンテンツを CURL で取得し、Web ルート ディレクトリの新しいファイルに保存します。現在、データベースに行を保存することと混同しています。

私のDBスキーマは次のようになります:

ID  |   TYPE        |   LINK_ONE                      |  LINK_TWO
--------------------------------------------------------------------------------------
 1  |  REFALIAS     |  http://*.example.com/data/*/*  | http://example.com/data/?q=$2
 2  |  REFALIAS     |  http://*.example.com/data/*/*  | http://example.com/data/?q=$2
 3  |  REFALIAS     |  http://*.example.com/data/*/*  | http://example.com/data/?q=$2

私はこれを試します:

<?php     
$fp = @fopen('myFile.txt', 'r');
    while(!feof($fp)) {
       $buffer = fwrite($fp, 999);
       list($type, $link_one, $link_two) = explode("\n", $buffer);
       mysql_query('INSERT INTO table ('type', 'link_one','link_two' VALUES("{$type}, {$link_one}, {$link_two}");
    }
?>

このバック通知: 未定義のオフセット: 2; 私はこのような多くの例を試してみましたが、各行をすべて db に保存することはできません。行ごとに保存する必要があります。爆発だけで成功するのですが、どうすればすべてを分離できますか...

これの例

4

1 に答える 1

0

このコードを試してください:

<?php     
$fp = @fopen('myFile.txt', 'r');
    while(!feof($fp)) {
       $buffer = fgets($fp);
       if (empty($buffer)) continue;
       list($type, $link_one, $link_two) = explode(" ", $buffer);
       mysql_query('INSERT INTO table (`type`, `link_one`, `link_two`) VALUES(\'' . $type . '\', \'' . $link_one . '\', \'' . $link_two . '\')');
    }
?>
于 2013-04-09T10:52:05.997 に答える