最近私は精算しているPHPコードがたくさんあります.SQL構文は大文字と小文字が異なります。私はそれを通過し、読みやすさに合わせるように修正しました。Sedを選択的に使用してSQL構文を置き換えます
私が使用している現在のコマンドは次のとおりです。
sed -i 's/select/SELECT/g;s/from/FROM/g;s/where/WHERE/g;s/limit/LIMIT/g;s/and/AND/g' /master/dashboard.php
は問題はしかし、これらの言葉のいくつかは、HTMLフォームでエラーメッセージなどをポップアップ表示され、私はこれらのエラーを修正暇つぶしです。むしろ、より賢く働いていたいと思います。すべてのMySQLを想定すると
は、私が最初にそれの内部置換を行うことをクエリー部分を検索するためのsedの正規表現を取得するにはどうすればよいのそう
mysqli_query($mysqli_con,"select * from contacts where username='$username' and password='$password' and active='1'");
同様のフォーマットされていますか?
私はあなたに永遠に質問してくれるでしょう:私が正規表現を置換領域として使うことができれば、ファイルから単語のリストをフィードして `sed ?
ie:連絡先、ユーザー名、パスワード、会社などのファイルがあります。 sed - > `contacts`、` username`、 `password`、` etc`です。
例ファイル入力Snipit:あなたのクエリが1行にとどまると仮定すると、
session_start();
$username = preg_replace("%[^[email protected]]%","",$_SESSION['username']);
$password = preg_replace("%[^-! [email protected]]%","",$_SESSION['password']);
$date = date("r");
$ip = $REMOTE_ADDR;
$query = mysqli_query($mysqli_con,"select * from contacts where username='$username' and password='$password' and active='1'");
$data = mysqli_fetch_array($query);
if((mysqli_num_rows($query) == "0"))
{
$_SESSION['message'] = "<font color='red'><b>" . _("Invalid login") . ":</b> " . _("The username and password you entered are not valid.") . "</font>";
header('Location: /index.php');
}
else
{
$_SESSION['username'] = $data['username'];
$_SESSION['password'] = $data['password'];
$_SESSION['accountid'] = $data['accountid'];
$_SESSION['role'] = $data['role'];
$getCompany = mysqli_query($mysqli_con,"select * from companies where companyid='" . $data['accountid'] . "'");
$dataCompany = mysqli_fetch_array($getCompany);
include('/master/html/header.inc');
?>
<script type="text/javascript">
$(document).ready(function()
{
resizeDashboard();
$(window).resize(function() {
あなたが選択した単語が、一見無制限の方法で壊される前記結果を、好きではないだろう。多くのキーワードがあります。 –