私はWordpressのページを持っています。私はAmazon AWSでホストされているデータベースから取得する検索機能を使って作業しています。新しいページで検索結果を表示
検索すると、データをきちんと引き出すことができますが、結果は検索バーの下に表示されます。
結果を別のページに表示したいのですが。
何も問題はありませんでしたが、以前に質問されたことを使用していくつかの提案を試みました。提供される任意のヘルプははるかに高く評価されて
<?php
/* Template Name: Database */
?>
<?php
global $query_string;
$query_args = explode("&", $query_string);
$search_query = array();
if(strlen($query_string) > 0) {
foreach($query_args as $key => $string) {
$query_split = explode("=", $string);
$search_query[$query_split[0]] = urldecode($query_split[1]);
} // foreach
} //if
$search = new WP_Query($search_query);
?>
<?php get_header(); ?>
<?php get_footer(); ?>
<?php
$db_hostname = 'xxxxxxxxxxxxxxx';
$db_username = 'xxxxxxxxxxxxxxx';
$db_password = 'xxxxxxxxxxxxxxx';
$db_database = 'xxxxxxxxxxxxxxx';
$con = mysql_connect($db_hostname,$db_username,$db_password);
if (!$con){
die('404 Could not connect to server: ' . mysql_error());
}
mysql_select_db($db_database, $con);
global $sf_options;
$sidebar_config = $sf_options['archive_sidebar_config'];
$left_sidebar = $sf_options['archive_sidebar_left'];
$right_sidebar = $sf_options['archive_sidebar_right'];
$blog_type = $sf_options['archive_display_type'];
if ($blog_type == "masonry" || $blog_type == "masonry-fw") {
global $sf_include_imagesLoaded;
$sf_include_imagesLoaded = true;
}
?>
<div class="container-fluid">
<center>
<form role="" method="get" >
<p style="color: #fff;">Search products and services for your business. We make it easier<br />to manage your business operations and make informed purchasing decisions.</p>
<input type="text" name="term" placeholder="Start typing to find a product or business"/>
<span><input type="submit" value="" class="btn btn-default" /></span>
</form>
</center>
</div>
<?php
if (!empty($_REQUEST['term'])) {
$term = mysql_real_escape_string($_REQUEST['term']);
$sql = "SELECT * FROM wpfr_listing WHERE Description LIKE '%".$term."%'";
$r_query = mysql_query($sql);
while ($row = mysql_fetch_array($r_query)){
echo '<br /> Company: ' .$row['title'];
echo '<br /> Certs: '.$row['certs'];
echo '<br /> Certifier: '.$row['certifier'];
echo '<br /> Address: '.$row['address'];
echo '<br /> Country: '.$row['country'];
echo '<br /> State: '.$row['state'];
echo '<br /> City: '.$row['city'];
}
}
?>
:
は、ここに私のコードです。
の少年ああ、このコードはとても脆弱です。あなたのフォームの前に 'if(空白($ _REQUEST ['term']))'を追加し、フォームの下の 'if'を' else'に変更してみてください – JapanGuy
このコードを脆弱にする原因は何ですか?これは、もはや使用していない開発者によって書かれたものです。 – MARVNVRAM
mysql_コマンドは廃止され(mysqli_に変更されました)、同じファイル内のdbに接続するための資格証明を持たないことは良い方法ではありません。全体的には、mysqli_を使用するよりもPDOに切り替える方が良いです。 http://php.net/manual/en/ref.pdo-mysql.php – JapanGuy