Къде бъркам в заявката?

Msecurity

Registered
Идеята е следната: искам от две различни таблици да сравня годините и ако всичко е ОК да изведе резултата.
Ето го кода който съм съм драснал до сега:

loader.php
PHP:
<?php
       $markars = $_POST['markars'];
	$modelrg1 = mysql_query("SELECT  y.year, y.marka, y.model, x.year, FROM manufact as x, modelrange as y WHERE y.year = x.year AND marka='$markars';")or die(mysql_error());
	while($row = mysql_fetch_array($modelrg1))
	{
	echo '<option value="' . $row['model'] . '">'. $row['model']. '</option>';
}

	?>
cars.php
Само Java Scripta за да ви стане ясно за какво е променливата $markars

[js]$(document).ready(function(){
$('#modelrange').hide();
$('#manufact').change(function(){
var marka = $('#manufact :selected').val();
$.post("loader.php", { markars: marka }, function(data){
$('#modelrange').show();
$('#modelrange').html(data);
});
});
});[/js]
 
$modelrg1 = mysql_query("SELECT y.year, y.marka, y.model, x.year, FROM manufact as x, modelrange as y WHERE y.year = x.year AND y.marka='{$markars}';"

Е, ми хайде да пишем малко по-малко запетаи ? :D И това нещо би трябвало да гръмне, + това в WHERE клаузата си изтървал да поясниш marka от коя таблица е.


@shterev JOIN не е единствения начин, в случая той е използвал по-лесния и кратък начин, а именно алиаси, които и аз предпочитам.
 
Е да е*а пак не ми извежда резултатите в опшъна... все едно въобще няма заявка, а и най интересното е че не ми извежда и грешка?!?
Някакви други идеи?
 
Код:
"SELECT  y.`year`, y.`marka`, y.`model`, x.`year`, FROM `manufact` as x
LEFT JOIN  `modelrange` as y WHERE y.`year` = x.`year` AND `marka`='".mysql_real_escape_string($markars)."'"
 
Пак не става... вече 1 час се мъча със най различни заявки ноо всеки път едно и също... или извежда резултати който реално погледнато не ми трябват или нищо не извежда...
 
Оправих се , ноо то просто няма такава грозотия и обърквация на кода който драснах :D

Ето как го измислих със уникални ключове за връзка между таблиците:

loader.php

PHP:
	<?php
	$conn = mysql_connect('localhost', 'root', 'vertrigo') or die('nqma vryzka s BD');
	mysql_select_db('test', $conn);
	$unicodes_s = $_POST['unicodes_s'];
	$year_s= $_POST['year_s'];
	$result = mysql_query("SELECT * FROM manufact WHERE unicodes='$unicodes_s'");
while($row = mysql_fetch_array($result))
{
	echo '<option value="' . $row['unicod'] . '">'. $row['marka']. '</option>';
}

?>
<?php
 $unicod_s = $_POST['unicod_s'];
 $modelrg= mysql_query(" SELECT * FROM modelrange WHERE unicod='$unicod_s';")or die(mysql_error());

while($row = mysql_fetch_array($modelrg))
	{
	echo '<option value="' . $row['unicod'] . '">'. $row['model']. '</option>';
}
	?>

cars.php - JavaScript-a който извежда падащите менюта

[js]$(document).ready(function(){
$('#manufact').hide();
$('#years').change(function(){
var unicodes = $('#years :selected').val();
$.post("loader.php", { unicodes_s: unicodes }, function(data){
$('#manufact').show();
$('#manufact').html(data);
});
});
});
$(document).ready(function(){
$('#modelrange').hide();
$('#manufact').change(function(){
var unicod = $('#manufact :selected').val();
$.post("loader.php", { unicod_s: unicod }, function(data){
$('#modelrange').show();
$('#modelrange').html(data);
});
});
});[/js]
 
По принцип няма логика да не ти работи заявката, но не знам как са ти структурирани таблиците.
 

Back
Горе