2017-04-19 3 views
0

私はコードを.TXTファイルに書き込んで保存するようなコードを書いています。その後、テキストや単語が書かれているか保存されている場合は、ファイル全体(txt)を検索する関数が存在するはずです。PHP fwrite with duplicate

誰かがLoveを書いていて、もう1人がLoveをもう一度入力したい場合は、エラーメッセージが表示されます。

は、ここで私が提出した名前のために私たちが埋めている配列($users)をチェックするin_array機能を使用している

<?php 
$name=$_POST['name']; 
$myfile= 
fopen("man.txt" , "a+") or 
die("Unable to open file!"); 
fwrite($myfile, "Name:".$name. "\r\n") 
?> 
+1

あなたがこれまでに試したコード/アプローチは何ですか? – Hunter

+0

次のコードは別です<?php $ name = $ _ POST ['name']; if(空($ name)) { echo "あなたの名前を入力してください"; } else $ name = $ name; $ myfile = fopen( "mam.txt"、 "a +")または (「ファイルを開くことができません!」); $ path = "mam.txt"; if(file_exists($ path)) { \t $ contents = file_get_contents($ path); \t $ contents = explode( "\ r \ n"、$ contents); \t $ users = array(); foreach($ contents as $ value){ \t $ user = explode( "\ r \ n"、$ value); \t $ users [$ user [0]] = isset($ user [1])? $ user [1]:null; } \t if(isset($ users [$ _ POST ['name']])) { echo "名前が存在します"; } else echo "NO"; } fwrite($ myfile、$ name。 "\ r \ n") ?> – SOA

答えて

1

ここに私のコードです。

名前が見つかった場合は、「名前は存在します」というエコーです。見つからない場合は「いいえ」と表示され、名前が追加されます。

<?php 

$name = $_POST['name']; 
if (empty($name)) { echo "Please enter your name"; } else $name=$name; 

$myfile= fopen("mam.txt" , "a+") or die("Unable to open file!"); 

$path="mam.txt"; 

if (file_exists($path)) { 
    $contents = file_get_contents($path); 
    $contents = explode("\r\n", $contents); 

    $users = array(); 

    foreach ($contents as $value) { 
     $users[] = $value; 
    } 
    // Search the file for the submitted name 
    if (in_array($name, $users)) { 
     // The name already exists 
     echo "Name exist"; 
    } else { 
     // The name doesnt exist 
     echo "NO"; 
     // Add the new name 
     fwrite($myfile, $name. "\r\n"); 
    } 
} 
?> 
+0

ありがとうございました! – SOA

+0

ありがとうございます。出来た。私がTeXフィールドの何もないページをリフレッシュすると、それは私に名前が存在すると伝えます。それは配列として空白を見ています。助けて – SOA