2016-10-21 2 views
0

を提出取得こんにちは、私は私のユーザーは、プレーヤーの電子メールに続いて選手の名前を掲示する最初のテキスト領域の2つのテキスト領域でフォームを持っている、 第二に、彼らは選手の名前とポイントのリストを掲載します。 最初のテキストエリアに投稿された報告書は、次のようになります。私は2列があり、私のDBの準備をする準備ができて2つの別々の配列には、この報告書を打破しようとしていますは、一つの形から2 SUBSTRは

1st place: MC_Vicky 
1st place email: [email protected] 
2nd place: TM7_CharrM5_ 
2nd place email: [email protected] 
3rd place: devinm21 
3rd place email: 
3rd place: poppop 
3rd place email: [email protected] 

。 私はほとんどこれを働いてきたが、その今午前4時、私の脳は、私はこのコードを使用してきたこれまでのところ、 痛い:私はそれは私が選手の名前と電子メールの両方を取得しているとして、このコードのエコーを表示したとき

// split the player nics and email address's into seperate arrays 
$rec = explode(PHP_EOL, $_POST['emails']); 
$rec = array_map('trim', $rec); 
$status = array(); 

foreach($rec as $rec) { 
    $Spaces = strrpos($rec, ':'); 
    $plays = trim(substr($rec, 12, $Spaces +1)); 
    $email = trim(substr($rec, $Spaces)); 
    echo $plays . " <br />"; 
    //echo $email . " <br />"; 

// end of Emails split 

を別々の行にあるが、1つの変数にある。 もし私が$ echo echoをコメントアウトすると、結果の二重エコーが得られます。 誰もが、私は何をする必要があるか見ることができ、 私は$あなたはあなたのforeachループの外にエコーする必要がある電子メールアドレスの

答えて

-1

の配列であるために、その後プレイヤー名 の配列$電子メールであることを果たしている必要があります。 foreach($ rec as $ r)を実行し、$ recを$ recとして実行する必要もあります。また、電子メール用と再生用の2つの空の配列を定義する必要があります。次に、配列プッシュを使用して、各値をそれぞれの配列にプッシュすることができます。

$rec = explode(PHP_EOL, $_POST['emails']); 
$rec = array_map('trim', $rec); 
$status = array(); 
$emails = array(); 
$plays = array(); 

foreach($rec as $r) { 
    $Spaces = strrpos($r, ':'); 
    $play = trim(substr($r, 12, $Spaces +1)); 
    $email = trim(substr($r, $Spaces)); 
    array_push($emails, $email); 
    array_push($plays, $play); 
} 
echo $plays; 
echo $emails;