2015-08-15 3 views
1

Я занимаюсь базовым веб-программированием, и наш профессор дал это как упражнение в обработке файлов. 1 текстовый файл 1 «учетная запись» и имя пользователя как имя файла. Это форма само действия, чтобы проверить «действительность счетов», что я не знаю, как официально представить проверенное имя пользователя в другой файл действий другого файл для чтения (счет информация и т.д.)Как сделать два действия в одной форме

<form action="webapp.php" method="POST" id="form1"> 
<input type = "text" placeholder="Username" name="username" id="username"/> 
<input type = "password" placeholder="Password" name="password" id="password" /> 
<input type="submit" value="Sign in"> 
<?php 
//Login test 
if(!empty($_POST)){ 
$login = $_POST['username1'].".txt"; 
if(file_exists($login)){ 
    $fp = fopen($login, 'r'); 
    $data = fread($fp, filesize($login)); 
    $pass = explode('!', $data); 
    if($_POST['password1'] != $pass[1]){ 
     echo "<script>alert('Password incorrect');</script>"; 
     fclose($fp); 
    } 
    else{//submit username to another action here 

Поэтому в основном то, что Я спрашиваю, как иметь два действия в одной форме, используя только php и javascript.

+0

вы можете использовать сеансы php (http://php.net/manual/en/features.sessions.php), чтобы выполнить это. внутри инструкции else вы начинаете сеанс и назначаете переменные, которые хотите перенести на переменные в сеансе. то вы можете вызвать начало сеанса на новой странице, проверьте, существуют ли переменные, которые вы назначили (например, пользователь входит в систему), и курица использует переменные на новой странице ... – DeveloperACE

ответ

0

Когда вы проверяете пользователя, в своем другом вы можете добавить эту информацию пользователей в сеансы. например:

<form action="webapp.php" method="POST" id="form1"> 
<input type = "text" placeholder="Username" name="username" id="username"/> 
<input type = "password" placeholder="Password" name="password" id="password" /> 
<input type="submit" value="Sign in"> 
<?php 
//Login test 
if(!empty($_POST)){ 
$login = $_POST['username1'].".txt"; 
if(file_exists($login)){ 
$fp = fopen($login, 'r'); 
$data = fread($fp, filesize($login)); 
$pass = explode('!', $data); 

session_start(); 
if($_POST['password1'] != $pass[1]){ 
    echo "<script>alert('Password incorrect');</script>"; 
    fclose($fp); 
} else { 
    $_SESSION['user_id'] = $_POST['username1']; 
    //...more code 
} 

Так что теперь, когда вы находитесь на другой странице/файл, вы можете использовать $ _SESSION [ «user_id»], чтобы держать «user_id» или любой другой переменной (адрес электронной почты и т.д.). Обратите внимание на session_start(); над выражением if; вам понадобится это на каждой странице, которую вы хотите использовать.

Смежные вопросы