2016-01-12 5 views
0

PHPВыберите тип ввода = текстовое значение в качестве имени столбца

$searchby =mysqli_real_escape_string($conn,$_GET['searchby']); 
    $searchx =mysqli_real_escape_string($conn,$_GET['searchx']); 
    $order=mysqli_real_escape_string($conn,$_GET['order']); 

    $fetchquery9 = "SELECT * FROM reservation WHERE '$searchby' = '$searchx' ORDER BY '$order'"; //sql query 
    $fetch9 = mysqli_query($conn, $fetchquery9); 

Аякса

function sortdata(){ 
    var searchby = $('#searchby').val(); 
    var searchx = $('#searchx').val(); 
    var order = $('#order').val(); 


    $.ajax({ 
    type: "POST", 
    url: "getdatasort.php?searchby="+searchby+"&searchx="+searchx+"&order="+order 
}).done(function(data) { 
    $('#viewdata').html(''); 
    $('#viewdata').html(data); 
}); 
}//passing value using ajax 

HTML

<div class="row"> 
<div class="col-md-6"> 
</div> 

<div class="col-md-2"> 
<select type="text" class="form-control" id="searchby" name="searchby"  placeholder="searchby" onChange="sortdata();"> 
<option value="reservationno">Reservation No.</option> 
<option value="name">Full Name</option> 
<option value="number">Contact Number</option> 
<option value="email">Email</option> 
<option value="course_reservation">Course</option> 
<option value="class_code_reservation">Class Code</option> 
<option value="startdate">Start Date</option> 
<option value="enddate">End Date</option> 
<option value="desired_date">Desired Date</option> 
</select> 
</div> 

<div class="col-md-2"> 
<input type="text" class="form-control" id="searchx" name="searchx"    placeholder="Searh here" onChange="sortdata();"> 
</div> 

<div class="col-md-2"> 
<select type="text" class="form-control" id="order" name="order"> 
<option value="ASC">ascending</option> 
<option value="DSC">descending</option> 
</select> 
</div> 

я просто хочу знать, как установить входной тип = текстовое значение как имя столбца в sql-запросе в php. Имеет 3 входных текста, где пользователь может просматривать данные sql в зависимости от значения текстового значения. первый вход содержит столбец SQL второй входной элемент поиска и третий вход заказа (возр или DESC)

+0

Это 'ORDER BY«$ order'' является недействительным. Вам нужно имя столбца/выражение. Это значение должно быть в backticks. – chris85

+0

yah my error..thank you chris85 – Crys

ответ

1

Просто нужно, чтобы удалить кавычки

$fetchquery9 = "SELECT * FROM reservation WHERE $searchby = '$searchx' ORDER BY $order"; //sql query 
+0

Спасибо Эдуан! – Crys

Смежные вопросы