2017-05-22 9 views
-1

テキストフィールドから名前を取得してfirstnameとlastnameに分割するPHP変数はありません。ここでテキストフィールドからphp変数を取得する

は私のコードです:

<form action="split.php" metod="POST"> 
<input type="text" id="pcategory" name="fullname" value="Jason Bill"> 
<?php 
if(isset($_POST['fullname'])){ 
$name = $_POST['fullname']; 
} 
echo $name; 
$parts = explode(" ", $name); 
$lastname = array_pop($parts); 
$firstname = implode(" ", $parts); 
echo "Lastname: $lastname\n"; 
echo "Firstname: $firstname\n"; 
?> 
</form> 

私は次のエラーを取得する:

Notice: Undefined variable: name in C:\xampp\htdocs\ordinacija\split.php on line 9 Notice: Undefined variable: name in C:\xampp\htdocs\ordinacija\split.php on line 11

+0

あなたは、コードを追加したり、私たちに何かを表示する必要があります。あなたは 'input'フィールドを持っていて、ユーザーは名前を入力しています。最初の名前と最後の名前を分割したいのですか? – chris85

+0

リロードせずにテキストフィールドから値を取得する場合は、Javascriptを使用する必要があります。 – Icewine

答えて

1

このページの最初のロードに$_POST['fullname']を定義していないので、あなたが取得している理由です注意。

if (isset($_POST['fullname']))ブロック内のすべてのロジックを追加します。

<!-- Ensure you're submitting the page to itself. This code here should be in 'split.php' --> 
<form action="split.php" metod="POST"> 
<input type="text" id="pcategory" name="fullname" value="Jason Bill"> 
<?php 
if(isset($_POST['fullname'])) { 
    $name  = $_POST['fullname']; 
    $parts  = explode(" ", $name); 
    $lastname = array_pop($parts); 
    $firstname = implode(" ", $parts); 

    echo "$name\n"; 
    echo "Lastname: $lastname\n"; 
    echo "Firstname: $firstname\n"; 
} else { 
    echo 'No name has been submitted yet'; 
} 
?> 
<input type="submit" value="Get full name" /> 
</form> 
+0

そんなにありがとう! – Yarezz

関連する問題