昨日、ログインページで問題が発生したことを昨日、ライブサーバーにアップロードしましたが、基本的にはページがリロードされていて、何もしていませんでした。質問は、参考のためにここにある:if文でphp issetが動作しない
Login script not working on live server
永遠に問題を把握しようとしているように思えるものをした後、私は、これを理解するために、ISSETなしでPHPを実行するために別のページにフォームを送信する必要がありましたそれはうまく動作します。問題の原因を見つけましたが、理由を理解できません。
私のコードをすべてissetから別のものに変更する必要はありませんが、PHPのバージョンが違うのですか?私のlocalhostは5.6.15で、ライブサーバーは5.6.13で、私はそれがこのような違いを作ったとは思わなかった。 ...
<?php
session_start();
$page_title = "Love Deals Login";
require('../inc/connect/config.php');
if($user->is_loggedin()!="") {
header("Location: index.php");
}
if(isset($_POST['login'])) {
$uname = $_POST['txt_uname'];
$upass = $_POST['txt_upass'];
if($user->login($uname,$upass)) {
header("Location: index.php");
} else {
$error = "Login failed. Please try again, or register";
}
}
include('inc/admin-header.php');
?>
<div class="container" style="padding: 100px 0 0 0;">
<div class="form-container">
<form method="post" id="login" action="form-test.php">
<h3>Please login</h3>
<?php if(isset($error)) { ?>
<div class="alert alert-danger">
<i class="glyphicon glyphicon-warning-sign"></i> <?php echo $error; ?>
</div>
<?php } else if(isset($_GET['joined'])) { ?>
<div class="alert alert-info">
<i class="glyphicon glyphicon-ok"></i> Thanks! You are now registered. You may now login below
</div>
<?php } else if(isset($_GET['pass-update'])) { ?>
<div class="alert alert-info">
<i class="glyphicon glyphicon-ok"></i> Success! Your password has been updated. You may now login below
</div>
<?php } ?>
<div class="form-group col-xs-12 col-sm-10 col-sm-offset-1 col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 login">
<input type="text" class="form-control" name="txt_uname" placeholder="Username" required />
</div>
<div class="form-group col-xs-12 col-sm-10 col-sm-offset-1 col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 login">
<input type="password" class="form-control" name="txt_upass" placeholder="Password" required />
</div>
<div class="clearfix"></div>
<div class="form-group col-xs-12 col-sm-10 col-sm-offset-1 col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3 login">
<p class="small text">Forgotten <a href="forgot-user.php">Username</a>/<a href="forgot-pass.php">Password?</a></p>
<button type="submit" name="login" class="btn btn-primary pull-right">
<i class="glyphicon glyphicon-log-in"></i> Login</button>
</div>
<div class="col-xs-12 col-sm-10 col-sm-offset-1 col-md-8 col-md-offset-2 col-lg-6 col-lg-offset-3" style="text-align: center;">
<label>Don't have an account yet? <a href="agree.php">Register now</a></label>
</div>
</form>
</div>
</div>
<?php include('inc/admin-footer.php'); ?>
コードのすべてが前の質問に含まれているローカルホスト上ではなく、ライブサーバー上で動作します:ここに参考のため
コード(それはまた、前の質問に含まれている)です。私も!empty
と&& !empty
を試しましたが、動作しませんでしたが、ifetet文なしの別ファイルで動作します。
いつものように、コードに関連する部分を質問に追加する必要があります。あなたは他にどんな答えを期待していますか? – arkascha
さて、何が間違っていますか?私は他の質問にいくつか変わったことがあるのを見ました。 –
これは意図したとおりに私のlocalhost上で動作し、ifetetを付けずにスクリプトを実行するためにフォームを別のファイルに送ると、動作し、ログインしてindex.phpにリダイレクトされます... isset ? –