を示さない一方であれば私のコードです:私は、私は彼が結果を持っていることを得るのvar_dump場合にのみ、PHPは、MySQLからの結果を返しますが、私はループの結果は、何もここ
<?php
require('...........');
require('................');
$search_query = strip_tags(substr($_POST['search_query'], 0, 60));
$region_query = strip_tags(substr($_POST['region_choice'], 0, 2));
$class_query = $_POST['class_choice'];
$quick_search = strip_tags(substr($_POST['quick_search'], 0, 1));
;
# setup database connection
$db_ok = 1;
$dbh = @mysql_connect($GLOBALS['database']['hs'], $GLOBALS['database']['un'],$GLOBALS['database']['pw']);
if (! $dbh) {
$db_ok = 0;
}
$dbh_selected = @mysql_select_db($GLOBALS['database']['db'], $dbh);
if (! $dbh_selected) {
$db_ok = 0;
}
if ($db_ok == 1) {
$query_addition = "";
if ($region_query > 0) {
$query_addition = " AND `location` = \"$region_query\" ";
}
if ($class_query > 0) {
$query_addition .= " AND `class` = \"$class_query\" ";
}
$query = "SELECT ID,date_active,title,location,environment,specialism FROM ";
$query .= $GLOBALS['database']['jobs_table'] . " WHERE `date_active` < CURDATE() AND `date_inactive` > CURDATE()
$query_addition AND `description` LIKE \"%$search_query%\" ORDER BY `ID`";
mysql_real_escape_string($query);
//mysql_set_charset('utf-8', $query);
$result = mysql_query($query,$dbh);
$table_content = "";
$row_count = 0;
if ($result) {
while ($row = mysql_fetch_row($result)) {
$id = $row[0];
$loc = stripslashes($row[3]);
$title = htmlentities(stripslashes($row[2]));
$env = htmlentities(stripslashes($row[4]));
$spec = htmlentities(stripslashes($row[5]));
if ($row_count % 2 == 0) {
$table_content .= "<tr>";
} else {
$table_content .= "<tr class=\"mellon\">";
}
$table_content .= "<td><a href=\"?p=Vacature&ID=$id\" abbr=\"". $title . "\" title=\"" . $title ."\">" . $title . "</a></td>";
$table_content .= "<td>" . get_location($dbh,$loc) . "</td>";
$table_content .= "<td>" . $env . "</td>";
$table_content .= "<td>" . $spec . "</td>";
$table_content .= "</tr>\n";
$row_count++;
if ($row_count == 20) {
break;
}
}
}
if ($row_count > 0) {
print "
<p>U heeft gezocht op: <b>$search_query</b></p>
<p>Hieronder vindt u een overzicht van gevonden vacatures met een maximum aantal van 20. Er zijn in totaal $row_count vacatures gevonden.</p>
<table class=\"table_layout\">
<tbody>
<tr>
<th>Titel</th><th>Regio</th><th>Werkomgeving</th><th>Specialisme</th>
</tr>
$table_content
</tbody></table>";
} else {
print "
<p>U heeft gezocht op: <b>$search_query</b></p>
<p><h4>Helaas heeft uw zoekopdracht geen resultaten opgeleverd</h4> </p>
" ;
}
} else {
print "
<p>U heeft gezocht op: <b>$search_query</b></p>
<p>Het zoeken is mislukt..</p>
";
}
?>
私はすべてを試してみましたwhileループは機能していないようです。ちょうど私がöのような特殊文字を使うときにはうまくいきません。私はhtmlspecialchar、htmlentitiesなどからすべてを試しました。 また、str_replaceとstrtrを使って特殊文字を変換しようとしました。あなただけのクエリパラメータに、クエリ全体でmysql_real_escape_string()
を実行することはできません
結果セットでmysql_num_rows($ resultset)が返すのは何ですか? –
ところで言及しておくと、私はmysqlでコードを実行すると完全に動作するということです。 – machie27