[英]PHP won't echo user input
對此有點陌生,所以如果我的問題經常被問到或沒有任何意義,我很抱歉。 我試圖讓 PHP 將用戶的輸入回顯到屏幕上的表單中。 每當我測試表單時,沒有任何變化。 你對這個問題的態度是什么?
<body>
<script src="index.js"></script>
</body>
</html>
<center><form name="name" method="get" class="form" id="nameInput">
<center><h4>Name</h4></class></center>
<center><input>
<center><div><form name="post" method="get" class="form" id="postInput">
<center><h4>Post</h4>
<center><input></div>
<center><div><button id="postButton">Post</button></div>
<?php
if(empty($_GET['name']) && empty($_GET['post'])){
echo "<h3>test</h3>";
$name = $_GET['name'];
$post = $_GET['post'];
}else{
$name = $_GET['name'];
$post = $_GET['post'];
echo "<h3> User: $name </h3>";
echo "<h3> Post: $post </h3>";
}
?>
像這樣的事情可能會幫助你開始:
<form method="get" class="form">
<center>
<strong>Name</strong>
<input type="text" name="name" value="" />
</center>
<center>
<strong>Post</strong>
<input type="text" name="post" value="" />
</center>
<center>
<input type="submit" value="Go!" />
</center>
</form>
試試這個:-
<body>
<center>
<form method="get" class="form" id="nameInput">
<h4>Name</h4>
<input name="Name" type="name">
<h4>Post</h4>
<input name="Post type="textarea">
<br><input type="submit" name="sub">
</form>
</center>
<?php
if(isset($_GET['sub'])) {
if(empty($_GET['Name']) && empty($_GET['Post'])) {
echo '<h2>Name: '.$_GET['Name'].'</h2>';
echo '<h2>Post: '.$_GET['Post'].'</h2>';
}
}
?>
<script src="Index.js"></script>
</body>
</html>
錯誤是您將 name 屬性賦予表單元素。每個輸入都應該有自己的名稱,而不是表單。並嘗試將 post 和 name 輸入保留在一個表單中。
希望這可以幫助。
首先,主要問題是由您的HTML
代碼引起的。
Mozilla 說;
<form>
HTML 元素表示包含用於提交信息的交互式控件的文檔部分。
因此,您需要將所有input
/ textarea
等元素都放在一個表單中。 為了做到這一點並使它更簡單,我寫了下面的代碼片段。 這在這個例子中會更有意義;
<form method='GET'>
<!-- INPUT Start -->
<input type="text" name='name'>
<input type="text" name='post'>
<!-- INPUT End -->
<!-- SEND BUTTON Start -->
<input type="submit" value='send'>
<!-- SEND BUTTON End -->
</form>
<form>
HTML 元素的另一個重要屬性是action='where_are_you_going_path'
但現在這是不必要的,因為您想重定向與您形成的頁面相同的頁面。
其次,打開頁面時會遇到一些 PHP 錯誤;
遇到 PHP 錯誤 嚴重性:注意
消息:未定義索引:名稱
..
發生這種情況是因為您錯誤地檢查了$_GET
數組。 因為您無法檢查尚未分配的索引是否為空。
要處理這個問題,您可以嘗試isset()
方法。
<?php
if(isset($_GET['name']) && isset($_GET['post'])){
echo "<h3> User:".$_GET['name']." </h3>";
echo "<h3> Post: ".$_GET['post']." </h3>";
}
?>
我想提出這個建議; 使用Mozilla 文檔學習 HTML/CSS 基礎知識。 之后跳轉到PHP
. 這對你來說會更容易。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.