2014-09-08 3 views
-5

다음 문제에 대한 지원을 요청합니다.PHP에서 HTML로 데이터 전달

문제점 : 사용자가 PHP 양식의 정보를 입력 할 때 문제가 발생합니다. 정보를 저장하고 다른 HTML 파일에 저장하지 않습니다.

PHP :

<?php 
$a= $_POST['name']; 
$b= $_POST['age']; 

?> 

HTML :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 

<input type="hidden" name="name" value="<?php echo $name ?>"> 
<input type="hidden" name="age" value="<?php echo $age ?>"> 

문제는 내가 페이지를 검사 할 때, 값이 비어 있습니다. 누구나 문제를 알 수 있습니까?

+2

... 이름을'$ name'이 아니라'$ a'에 저장했기 때문에? – MLeFevre

+0

양식이'POST' 또는'GET'을 통해 데이터를 보내나요? 또한 변수의 이름을 확인하십시오 – Justinas

+0

당신의 PHP와 HTML 코드가 같은 파일에 있습니까? 그것은 하나의'.php' 파일이어야합니다. –

답변

0

이 실제 코드 문제의 경우는 인용 분명하다 : 당신은 변수 $a$b을 설정하지만, 정의되지 않은 변수 $name$age에서 읽고있다. 설정 부분에서 수정 :

<?php 
$name = $_POST['name']; 
$age = $_POST['age']; 
?> 
+0

하지만 그들은 두 개의 다른 페이지입니다 –

+0

왜 그렇게됩니까? 완료시 PHP 페이지가 HTML 페이지로 리디렉션됩니까? 왜 둘 다 병합하지 않았습니까? –

0

당신이 $name$age는 값이 기대합니까 무엇? 당신이 할 수

우선 당신이해야 코드를 해결하려면 정의되지 않은 변수 오류를

error_reporting(E_ALL); 

를 얻을 수 있습니다 error_reporting를 대신 $name$age$a$b

0

은을 사용하여 반향 반향을 켜이다 html로 prnting하는 동안 저장하고있는 동일한 변수

<?php 
$a= $_POST['name']; 
$b= $_POST['age']; 

?> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 

<input type="hidden" name="name" value="<?php echo $a ?>"> 
<input type="hidden" name="age" value="<?php echo $b ?>"> 
+0

하지만 그들은 서로 다른 두 페이지입니다. –

0

나는 첫 번째 양식을 가지고 있습니다.

나는 그것이 어떻게 행해질 수 있는지 보여주기 위해 거짓 양식을 만들었습니다.

<?php 
error_reporting($level=NULL); 

?> 



<form action="new.php" method="post"> 
    <input type="text" name="name" value="<?php echo $_SESSION['name']?>"> 
    <input type="text" name="age" value="<?php echo $_SESSION['age']?>"> 
     <input type="submit" name="submit"> 

</form> 

이제 안내해 드리겠습니다. new.php

새로운 PHP 코드는 내가 한 번 더 파일을 만든이

<?php 


session_start(); 
if(isset($_POST['submit'])) 
{ 
    $_SESSION['name']=$_POST['name']; 
    $_SESSION['age']=$_POST['age']; 

} 

입니다. 대신에 숨겨진 i를 사용하는 대신 사용할 수 없습니다. 원하는 경우 숨겨진 값을 사용할 수도 있지만 숨겨진 값을 얻으려면 소스 코드를 확인해야합니다. 마우스 오른쪽 버튼을 클릭하여 얻을 수 있습니다. 고마워요 난 사용 해제 그래서 당신이 행동에서 볼 수 있습니다.

이 파일 이름을 form.php로 지정했는데 이름을 지정할 수 있습니다. 감사합니다

<?php 



session_start(); 
?> 
<form action="new.php" method="post"> 
    <input type="text" name="name" value="" disabled> 
<input type="text" name="age" value="<?php echo $_SESSION['name']; ?>" disabled> 
</form> 

이제 $ _session [ 'name'];에 대한 액세스 권한이 마지막으로 중요한 점이 하나 있습니다. $ _session [ 'age']; 너가 원하는 곳. 세션 시작을 상단에 포함시켜야합니다. 그리고 당신이 좋아하는 곳에이 변수를 표시 할 수 있습니다.

이 작업을 보려면 더미 값을 입력하십시오. 제출을 클릭하십시오. 다시 두 양식을 실행하면 거기에서 자신의 가치를 찾을 수 있습니다. 감사합니다.