2013-09-26 3 views
-1

로그인 자격 증명 테이블을 만들려고합니다. 사용자 이름과 암호를 입력하고 POST를 통해 보낼 수있는 로그인 버튼이 있습니다. html 테이블에 정보를 표시하고 싶습니다. 내 index.html은 다음과 같습니다 :PHP에서 사용자 정보를 저장하고 테이블에 표시하는 방법

<html><head> 
<title>Login</title> 
</head> 
<body style="left:-1px; top:-2px; " > 
<form action="index.html" method="post" > 
Email<input type="email" name="data" value="" /> 
Password<input type="text" name="pass" value="" /> 
<input type="submit" /> 

<?php 
$index = 0; 
$credentials = array{usernames,}; 
if (isset($_POST['submit']) { //to check if the form was submitted 
    $username= $_POST['data']; 
    $password= $_Post['pass']; 
    //$result = array($username,$password); 

    $credentials['usernames'].append($username); 
    $credentials['passwords'].append($password); 


    } 
?> 


</form> 
<table> 
<tbody><tr><th>Usernames</th> 
<th>Passwords</th> 
<?php for($i = 0; $i < $credentials.length; $i++){ <tr><?php echo $credentials[i]?></tr><tr><?php echo $credentials[password[i]]?></tr><tr> 
</body><html> 

내가 뭘 잘못하고 있니?

+1

처음에는 PHP와 같은 자바 스크립트를 사용하려는 것처럼 보입니다. – Jason

+2

코드에 몇 가지 구문 오류가 있습니다. $ credentials = 'usernames,';'$ credentials [ 'usernames']. append ($ username);'와 같은 오류가 발생합니다. http://de1.php.net/manual/de/language.types.array.php – TheWolf

+0

이 스크립트는 사용자가 페이지를 제출할 때마다 실행됩니다. 나는. 페이지 제출시 사용할 수있는 사용자 이름 암호는 하나뿐입니다. 테이블을 표시하려면 사용자/패스 쌍을 텍스트 파일 또는 데이터베이스 어딘가에 저장해야합니다. 코드에 몇 가지 구문 오류가 있으며 대문자 사용을주의하십시오 ($ _POST는 $ _Post가 아닙니다) – Loopo

답변

0

먼저 양식 활동이 HTML 파일을 가리 킵니다. PHP를 사용하려면 .php 파일 확장명을 사용하십시오. 그게 바로 당신의 첫 번째 문제입니다. HTML 파일은 PHP를 구문 분석 할 수 없습니다.

둘째, 암호를 구문 분석하려면 안전하게 게임하고 PHP를 사용하십시오.

echo '<table>'; 
while (list($key,$value) = each($_POST)) { 
    echo '<tr><td>'.$key.'</td><td>'.html_entity_decode(stripslashes($value)).'</td></td>'; 
} 
echo '</table>'; 

당신은 당신의 형태에 관계없이 항목의 수, 제대로 정보를 볼 수 있어야합니다 : 루프과 같이, 각 $ _POST를 나열하면서 그런 다음, PHP를 고려합니다.

+0

자, index.php 파일에 코드를 사용했습니다. 이제 두 개의 파일이 있습니다. 하나의 HTML 파일은 PHP가없는 초기 코드처럼 보입니다. index.php 코드는 위의 것입니다. 그 대신 $ 키가 대신 $ data이고 $ value는 $ pass입니다. 코드를 실행하려고하면 PHP가 작동하지 않습니다. 그것은 일반 텍스트로 제공됩니다. 내가 어떻게 달릴 수 있니? – Wyatt

+0

안전함을 표시하고 모든 오류를 표시하려면이 값을 추가하십시오 :'error_reporting (E_ALL); ini_set ('display_errors', '1');'잘못된 것의 절반을 말해 줄 것입니다. – davewoodhall

+0

좋아요. 그러면 이제는 빈 페이지가 표시됩니다. 아무 것도 표시되지 않는다는 점을 제외하면 이것은 좋은 것입니다. '$ 이메일 ''$ 패스 ''; \t \t error_reporting (E_ALL); ini_set ('display_errors', '1'); ?> – Wyatt

관련 문제