meine Abfrage istMeine SQL-Abfrage ist richtig oder falsch? Es zeigt mir Fehler wie Warnung: mysqli_num_rows() erwartet Parameter 1 werden MySQLi_Result, boolean
$statement = "SELECT * FROM profile_details
WHERE YEAR(CURDATE())-YEAR(dob) BETWEEN '$search_age'
AND '$search_age1'
AND gender LIKE '$search_gender'
OR main_caste LIKE '$search_relegion'
OR education_type LIKE '$search_qualification'
OR occupation LIKE '$search_occupation'";
Wenn ich mysqli_error($con);
echo es Nachricht zeigt
You have an error in your SQL syntax; check the manual that corresponds
to your MariaDB server version for the right syntax
to use near
'SELECT * FROM profile_details
WHERE YEAR(CURDATE())-YEAR(dob) BETWEEN '20' AND '' at line 1
Meine Verbindungsdatei ist unten angegeben
Und das Suchergebnis PHP-Datei ist .. Ich benutze Paginierung für Suchergebnisse ... Auf dieser Seite e Ich erhalte Fehler: Sie haben einen Fehler in Ihrer SQL-Syntax; Sie in die Bedienungsanleitung zu Ihrer MariaDB Server-Version für die richtige Syntax entspricht in der Nähe verwenden ‚SELECT * FROM profile_details WHERE
<?php
date_default_timezone_set('Asia/Kolkata');
require_once("includes/config.php");
require_once("includes/user_pagination.php");
global $con;
//if(isset($_POST['home_quick_search'])){
//get serch data from index.php
$search_gender = $_GET['s_gender'];
$search_relegion = $_GET['s_religion'];
$search_occupation = $_GET['s_occupation'];
$search_age = $_GET['s_age'];
$search_age1 = $_GET['s_age1'];
$search_qualification = $_GET['s_qualification'];
$page = (int)(!isset($_GET["page"]) ? 1 : $_GET["page"]);
if ($page <= 0) $page = 1;
$per_page = 10; // Set how many records do you want to display per page.
$startpoint = ($page * $per_page) - $per_page;
$statement = "`profile_details` WHERE `DATEDIFF(YEAR,dob,CURDATE())` AS dob BETWEEN '$search_age' AND '$search_age1' AND `gender` LIKE '$search_gender' OR `main_caste` LIKE '$search_relegion' OR `education_type` LIKE '$search_qualification' OR `occupation` LIKE '$search_occupation' ORDER BY `user_id` ASC";
//$statement = "SELECT * FROM profile_details WHERE YEAR(CURDATE())-YEAR(dob) BETWEEN '$search_age' AND '$search_age1' AND gender LIKE '$search_gender' AND main_caste LIKE '$search_relegion' AND education_type LIKE '$search_qualification' AND occupation LIKE '$search_occupation'";
$results = mysqli_query($con,"SELECT * FROM {$statement} LIMIT {$startpoint} , {$per_page}") or die (mysqli_error($con));
if (mysqli_num_rows($results) != 0) {
// displaying records.
$i = 0;
while ($row_user = mysqli_fetch_array($results)) {
$u_id = $row_user['user_id'];
$u_pid = $row_user['profile_id'];
$u_gender = $row_user['gender'];
$u_fname = $row_user['first_name'];
$u_relegion = $row_user['main_caste'];
$u_city = $row_user['city'];
$u_image = $row_user['photo'];
$u_dob = $row_user['dob'];
//age calculation
$dateOfBirth = $u_dob;
$today = date("Y-m-d");
$diff = date_diff(date_create($dateOfBirth), date_create($today));
//echo 'Age is '.$diff->format('%y');
$age = $diff->format('%y');
//age calculation ends
$u_status_all = $row_user['user_status'];
$u_status_of = $row_user['user_status']=='OFFLINE';
$u_status_on = $row_user['user_status']=='ONLINE';
echo'
<div class="col-sm-6 paid_people-left">
<ul class="profile_item">
<a href="view_profile.php?userdetail_id=$u_id">
<li class="profile_item-img">';
if (!empty($u_image)){
echo '<img src="users-photo/resized_'.$u_image.'" class="img-responsive" alt="'.$u_fname.'"/>';
}
else{
echo '<img src="images/s2.jpg" class="img-responsive" alt=""/>';
}
echo ' </li>
<li class="profile_item-desc">
<h4>Profile ID: '.$u_pid.'</h4>
<p>Age: '.$age.' Yrs, '.$u_gender.'</p>
<h5>View Full Profile</h5>
<p>';
if (!isset($u_status_on) && $u_status_of){
echo "Nope";
}
elseif (isset ($u_status_of) && $u_status_on){
echo "<img src='images/online.png' /> <span class='label label-success'>";
}
else {
if (isset ($u_status_of)){
echo "<img src='images/offline.png' /> <span class='label label-default'>";
}
}
echo "
$u_status_all</span><p>
</li>
<div class='clearfix'> </div>
</a>
</ul>
</div>";
}
} else {
echo "Sorry ! No Profiles are found.";
}
// }
?>
<div class="pagination-div">
<ul class="pagination">
<?php echo pagination($statement,$per_page,$page,$url='?'); ?>
</ul>
</div>
Bitte helfen Sie .thanks im Voraus
Nun, echo $ Anweisung ausführen und das Ergebnis ausdrucken. – Dimi
Es ist genau dort! Fehler in der Syntax Überprüfen Sie Ihre SQL-Abfrage, es ist offensichtlich falsch. –
@Dimi danke ... Ich versuche, Geburtsdatum im Alter Format zu konvertieren ... wie man es umwandelt ... –