2016-10-28 8 views
-1

私はオートフィルに関する多くの質問を見ましたが、どれも私のために働いていませんでした。私の問題の解決策がHTMLかPHPにあるのかどうかはわかりません。私は両方とも新しく、まだ私はそれらに慣れていません。私は簡単なチャットアプリに取り組んでいます。私が今いるのは、チャットウィンドウ、テキストフィールド、ニックネームフィールドです。両方ともテキストファイルに値を渡します(これは私がこれを動作させる方法ですが、ここでは変更しません)。問題は、これらのフィールドが両方ともフォームとして機能し、送信するたびにニックネームフィールドが更新されることです。私が望むのはニックネームフィールドを自動的に補完することです(ブラウザーが更新された後でもそれが残っていれば最高でしょうが、フォームを送信するだけであれば大丈夫です)PHPオートフィルなど?

コード:

PHP:

<?php 
    $action = $_GET["action"]; 
    $myText = $_POST["mytext"]; 
    $nick = $_POST["nick"]; 

    if($action = "save") { 
     $targetFolder = "/var/www/html/xami/"; 
     file_put_contents($targetFolder."htmlinput.txt", $nick.">".$myText); 
    }?> 

HTML:

<form action="?action=save" name="myform" method="post"> 
    <label for="nick">Nick:</label> 
    <input type=text id="nick" name="nick" placeholder="Nick" value="Name" required><br> 
    <input type=text name="mytext" placeholder="Text" required> 
    <input type="submit" value="Send."> 
</form> 

私はオートコンプリートが、無肯定的な結果で浮気されました。

私は明日のために投稿を残しています、私は返信します。あなたのHTMLを想定し

+0

ニックネームが入力されると、つまり '$ nick'に値が設定されると、なぜそれをフォームフィールドとして持つ必要がありますか?ユーザーが名前を絶えず変更しないようにするには、フォームのニックフィールドがわかったら削除してください。次に、ニックフォームの項目は 'type = 'hidden''です。 – sdexp

+0

フォームは常にページを更新します。 AJAXを使用してPHPファイルを呼び出す必要があるかもしれません。 – Rishi

+0

おそらく、フォームではなくセッション変数に入れるべきでしょう。ユーザーはブラウザコンソールを使用して非表示のフォームフィールドを変更できます。 – Barmar

答えて

0

は、あなたが持っている可能性が.phpのページ...

if(0<strlen($nick)){ 
    echo "<input type=hidden id='nick' name='nick' value='$nick'>"; 
}else{ 
    echo "<input type=text id='nick' name='nick' placeholder='Nick' value='Name' required><br>"; 
} 

あるいは、@Rishiが言うようにAJAXを使用する上で。

関連する問題