【发布时间】:2016-04-08 04:29:59
【问题描述】:
首先我的英语很糟糕,对不起。我正在尝试用 PHP 写博客。我正在写login.php。但是POST方法没有连接。
我写 kullanici adi 和 sifre 说:
Kullanıcı adı ve Sifre bos birakilaz.
不是语法问题。我正在为数据库使用 datagrip。
问题if($_POST) --> 无法从这里读取
<?php
if($_SESSION["login"]) // üye giris yaptımı yapmadımı session login kullanıcı girisi yapılmıssa gösterilir
{
require_once "inc/default.php";
}else {
if($_POST)
{
$kadi = p("kadi"); // wherein p function
$sifre = p("sifre");
if(!$kadi || !$sifre){
echo "Kullanıcı adı ve Sifre bos birakilamaz.";
}
else{
$query = query("SELECT * FROM uyeler WHERE uye_kadi = '$kadi' && uye_sifre='$sifre' && uye_rutbe = 1");
if(mysql_affected_rows()) // etkilenen satır varmı
{
$row = row($query); // row fonksiyonu çağrılır
$session = array( // sessionlar oluşturulur.
"uye_id" => $row["uye_id"],
"uye_rutbe" => $row["uye_rutbe"],
"uye_kadi" => $row["uye_kadi"]
);
session_olustur($session);
go(URL."/admin");
}
else
{
echo "<font color='red> Böyle bir Teknovol yöneticisi bulunmamaktadır.</font>";
}
}
}
HTML:
<div id="giris_yap">
<form action="" method="POST">
<table cellpadding="0" cellspacing="0">
<tr>
<td>Kullanıcı Adı : </td>
<td><input type="text" name="kadi"/></td>
</tr>
<tr>
<td>Şifre : </td>
<td><input type="password" name="sifre"></td>
</tr>
<tr>
<td></td>
<td><button type="submit"> Giriş yap</button> </td>
</tr>
</table>
</form>
</div>
<?php
}
?>
p 函数:
function p($par,$st = false)
{
if($st)
{
return htmlspeacialchars(addslashes(trim($_POST[$par])));
}
else
{
return addslashes(trim($_POST[$par]));
}
}
【问题讨论】:
-
你什么时候需要
addslashes? -
我使用的是安全性