2014-02-18 2 views
0

Я пытаюсь сделать эту страницу сортируемой с простым выпадающим списком. Прямо сейчас есть только два разных автомобиля, и они не сортируют их. Я хотел бы иметь возможность сортировать марку, модель и год, но сначала нужно понять эту первую часть (правильно?).как подключить мой php к mysql для запроса ajax

Может кто-нибудь, пожалуйста, помогите мне с этим? Что-то не так с моим PHP-кодом или моим скриптом или обоими?

<script> 
function showCars(str) 
{ 
if (str=="") 
{ 
document.getElementById("showcars").innerHTML=""; 
return; 
} 
if (window.XMLHttpRequest) 
{// code for IE7+, Firefox, Chrome, Opera, Safari 
xmlhttp=new XMLHttpRequest(); 
} 
else 
{// code for IE6, IE5 
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
} 
xmlhttp.onreadystatechange=function() 
{ 
if (xmlhttp.readyState==4 && xmlhttp.status==200) 
{ 
document.getElementById("txtHint").innerHTML=xmlhttp.responseText; 
} 
} 
xmlhttp.open("GET","getcars.php?q="+str,true); 
xmlhttp.send(); 
} 
</script> 

<form> 
<select name="make" onchange="showCars(this.value)"> 
<option value="">Select a person:</option> 
<option value="Ford">Ford</option> 
<option value="Subaru">Subaru</option> 
</select> 
</form> 
<br> 
<div id="showcars"> 
<?php 
$q = intval($_POST['q']);$con=mysqli_connect("mysql.database.com","user","password","table"); 
// Check connection 
if (!$con) 
{ 
die('Could not connect: ' . mysqli_error($con)); 
} 

mysqli_select_db($con,"ford_man"); 
$sql="SELECT * FROM make WHERE make = '".$q."'"; 

$result = mysqli_query($con,$sql); 

while($row = mysqli_fetch_array($result)) 
{ 

    echo '<span style="float: left; wdith="300px;">' . $row['pics'] . '</span>'; 
    echo '&nbsp; &nbsp; &nbsp; &nbsp;' . '<span style="font-size:28px;">' . $row['year'] . '</span>'; echo "&nbsp;"; echo '<span style="font-size:28px;">' . $row['make'] . '</span>'; echo "&nbsp;"; echo '<span style="font-size:28px;">' . $row['model'] . '</span>'; 
    echo "<br>"; 
    echo '&nbsp; &nbsp; &nbsp; &nbsp;' . '<span style="font-size:32px;">' . $row['price'] . '</span>'; echo "&nbsp; &nbsp;"; echo '<span style="font-size: 26px;">' . $row['miles'] . '</span>'; echo "&nbsp;"; echo 'miles' ; 
    echo "<br>"; 
    echo '<span style="width:800px; float:left;">' . $row['description'] . '</span>'; 
    echo "<br>"; 
    echo '<i> &nbsp; &nbsp;'; echo '<span style="font-size:12px;">' . 'Stock#' . '</span>'; echo '&nbsp;'; echo '<span style="font-size:12px;">' . $row['stock'] . '</span>'; echo'</i>'; 
    echo '<br>'; 
    echo '<br>'; 
    echo '<br>'; 
    echo '<a style="text-decoration: none; color: rgba(254,094,008,1.00);" href="mailto:[email protected]">' . 'Email Me About This Car' . '</a>'; 
    echo "<hr>"; 
} 
    mysqli_close($con); 
?> 
</div> 
+0

В 'mysqli_connect' таблицы на самом деле должна быть база данных, если база данных не называется таблица. – DNACode

ответ

2

В вашем AJAX вы используете GET в то время как ваш PHP ищет в POST суперглобальном

+0

Я пробовал это, и я всегда получаю эту ошибку на странице http://www.havikmarketing.com/images/error.png – broserdooder

+0

Я думаю, я должен сказать, что мое первое поле «id» имеет значение null и auto inc. , , поэтому я не уверен, что именно поэтому я получил ошибку. , , нет 1 – broserdooder

+0

Я считаю, комментарий от MrHunter может быть решением вашей проблемы. Попробуйте изменить «таблицу» на «ford_man», считая, что это имя вашей БД, а также убедитесь, что имя вашей таблицы действительно «делает», потому что похоже, что вы используете одно и то же имя как для таблицы, так и для одного из ее столбцов , – nstein

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