2016-08-29 26 views
1

TWITTERを監視するアプリケーションがあります。私は、次のコードを持っている:Foreach複数の値を挿入するSQLサーバー

PS:私はVAR $ツイートがTwitterからコンテンツを受信して​​いが、後に、コードを開始します:

foreach ($tweets->statuses as $key => $tweet) { 
$image=$tweet->user->profile_image_url; 
$user=$tweet->user->screen_name; 
$name=$tweet->user->name; 
$data=$tweet->created_at; 
$post=$tweet->text; 

echo "$image $user $name $data $post" ; 
echo "<br>"; 
} 

これは完璧な作品!これは、多くの行を印刷します。 :)

私は私のSQL Serverでそれを挿入しようと、問題が開始されます。私は上記のコマンドを実行すると、それだけで1行のデータを挿入

$insert = "INSERT INTO dbo.twitter (user_photo, user_name, name, post, data) VALUES ('$image', '$user', '$name', '$post', '$data')"; 


$result=sqlsrv_query($conn, $insert); 

if (!$result) { 
print("Error"); 
    } else { 
print("Data Inserted!"); 

mssql_close($conn); } 

!なぜ???私は "エコー"とそれを印刷しようとすると、それは多くの行を印刷しますが、私が挿入を行うと、それは1行だけを挿入する!誰か助けてくれますか?

答えて

0

ループ内で確実に実行する必要があります。 だから

foreach ($tweets->statuses as $key => $tweet) { 
    $image=$tweet->user->profile_image_url; 
    $user=$tweet->user->screen_name; 
    $name=$tweet->user->name; 
    $data=$tweet->created_at; 
    $post=$tweet->text; 

    echo "$image $user $name $data $post" ; 
    echo "<br>"; 

    $insert = "INSERT INTO dbo.twitter (user_photo, user_name, name, post, data) VALUES ('$image', '$user', '$name', '$post', '$data')"; 


    $result=sqlsrv_query($conn, $insert); 
} 
+0

Lol !!!あなたが悲しんでいるように私は言った: if(!$ result){ print( "Error"); } else { print( "データが挿入されました!"); mssql_close($ conn); } それは動作します!!!!笑!ありがとう!! –

+0

働いていると答えたものをマークしてください。乾杯。 –

関連する問題