Передавать указатель на соединение с базой в mysql_* функциях - не обязательно. Если его нет - то используется последнее открытое соединение. Указатель на соединение с базой $db обязательно нужно передавать в случаях, когда один PHP-скрипт одновременно работает с двумя и более разными подключениями к базам данных, чтобы PHP знал, к какой именно базе нужно делать данный запрос. Однако я предпочитаю всегда передавать этот указатель. По поводу белого экрана. Попробуй открыть исходный код страницы и посмотри, возможно там косяк в сгенерированном HTML.
Код (Text): <?php $db_host='127.0.0.1'; $db_login='root'; $db_pass=''; $db_name='zakaz'; $db = mysql_connect($db_host,$db_login,$db_pass); $connect=false; if(!$connect=mysql_connect('127.0.0.1','root','')) { exit(mysql_error().' <> '.mysql_errno()); } else if(!mysql_select_db('zakaz',$connect)) { exit(mysql_error().' <> '.mysql_errno()); } else { mysql_set_charset('cp1251',$db); } function query($query) { global $connect; if($connect && ''!=$query) { return mysql_query($query,$connect)or exit(mysql_error().'<br>'.mysql_errno()); } return false; } //Вот я подключился и идет функция которую я вообще даже прочитать с моими знаниями не могу. function td($td,$id=null) { $id=($id)?' id="'.$id.'"':''; return'<td'.$id.'> '.$td.' </td>'; } //алее идет запрос обьединения столбцов $sql=mysql_query("SELECT `fz`.*,`tr`.* FROM formzakaz as `fz` INNER JOIN tender as `tr` ON `fz`.`id`=`tr`.`forid`")or exit(mysql_error().'<br>'.mysql_errno()); $table=''; //дальше идет начало таблицы со вставкой данных echo '<table>'; while($array=mysql_fetch_assoc($sql)) { $table.='<tr style="color:red;"> '.td($array['forid'],'one').' '.td($array['id'],'tho').' '.td($array['name'].'id'.$array['forid']).'</tr>'; } //Таблица заканчивается echo ' <?=$table?> </table>'; ?> Я если до этого понимал еще что к чему более менее то сейчас мозг отказывается... выводит пустую страницу. вод хтмл Код (Text): <table> <?=$table?> </table>
Лично для себя щас взял создал, все пашет... Указатель желательно указывать. Код (PHP): function td($td,$id=null) { $id=($id)?' id="'.$id.'"':''; return'<td'.$id.'> '.$td.' </td>'; } Код (PHP): $connect=false; if(!$connect=mysql_connect('localhost','root','pass')) { exit(mysql_error().' <> '.mysql_errno()); } else if(!mysql_select_db('z',$connect)) { exit(mysql_error().' <> '.mysql_errno()); } else { mysql_set_charset('utf8',$connect); } Код (PHP): function query($query) { global $connect; if($connect && ''!=$query) { return mysql_query($query,$connect); } return false; } Код (PHP): $sql=query("SELECT `fz`.*,`tr`.* FROM `formzakaz` as `fz` INNER JOIN `trender` as `tr` ON `fz`.`id`=`tr`.`forid`"); $table=''; while($array=mysql_fetch_assoc($sql)) { $table.='<tr> '.td($array['name'],'one').' '.td($array['forid'],'tho').' '.td($array['id'],'id'.$array['forid']).' </tr>'; } Код (PHP): <table> <?=$table?> </table> Name2 --------- 2 --------- 1
АААаааа!!!! ура!!!!!Спасибо огромнейшее!!!!! Your,за твой мозг и главное терпение к таким как я))) sobachnik,а тебе за то что поставил финальную точку))) я грешил на это но не понимаю как и в какую сторону править))) Добавлено спустя 8 минут 14 секунд: но все равно косяк.. HTML Код (Text): <table><tr style="color:red;"> <td id="one"> 3 </td> <td id="tho"> Сергей </td> <td> Иванов Константинович </td></tr><tr style="color:red;"> <td id="one"> 4 </td> <td id="tho"> Сергей </td> <td> Иванов Константинович </td></tr></table> что выводит: 3 Сергей Иванов Константинович 4 Сергей Иванов Константинович должно: 3 Сергей Иванов Константинович 3 Иванов Иван Иванович должен искать схожие значения и выводить их Добавлено спустя 46 секунд: ну имеется в виду forid. таблицы в звпросе поменять местами? Добавлено спустя 2 минуты 10 секунд: /php/u4ast.php?id=4 id из адресной надо брать при этом?
Код (PHP): function query($query) { global $connect; if($connect && ''!=$query) { if(@mysql_errno($connect)) { exit(mysql_error($connect).'<>'.mysql_errno($connect)); } return mysql_query($query,$connect); } return false; } =))) Предыдущий пост не понял.
выовдит значения не равные. тоесть 3 и 4 это forid который долен быть одинаковым. так как я нажал на кнопку у которой id=3.
Код (Text): <?php $db_host='127.0.0.1'; $db_login='root'; $db_pass=''; $db_name='zakaz'; $table = 'tender'; $db = mysql_connect($db_host,$db_login,$db_pass); $connect=false; if(!$connect=mysql_connect('127.0.0.1','root','')) { exit(mysql_error().' <> '.mysql_errno()); } else if(!mysql_select_db('zakaz',$connect)) { exit(mysql_error().' <> '.mysql_errno()); } else { mysql_set_charset('cp1251',$db); } function query($query) { global $connect; if($connect && ''!=$query) { return mysql_query($query,$connect)or exit(mysql_error().'<br>'.mysql_errno()); } return false; } //Подключился к БД $id = htmlspecialchars($_GET["id"]);//Нашел id while ($sql_data['forid'] = $id) { $query = "SELECT id,forid, name FROM $table WHERE forid='$id'"; echo $sql_data['id'].$sql_data['name'].$sql_data['forid']; }//И вот как бы по идее код счетчика но он выдает ошибку и пишет бусконечно. ?> вот написал такое вот...выдает нереальный баг- выводит бесконечное кол-во строк. Сейчас то я уже близок к победе))) уже нашел как найти $id чтобы вывести из БД только толбцы подходящие под уравнение forid=$id. Помогите как этот список правильно написать? Добавлено спустя 3 минуты 12 секунд: Warning: mysql_fetch_array(): supplied resource is not a valid MySQL result resource in I:\minitender\php\u4ast.php on line 29 вот ошибка.естественно в счетчике Добавлено спустя 20 минут 42 секунды: Код (Text): $id = htmlspecialchars($_GET["id"]); $soo = mysql_query("SELECT * FROM tender WHERE forid = '$id'"); $kol = mysql_num_rows($soo); for ($i=1; $i <= $kol; $i++) { $kol2 = mysql_fetch_assoc($soo); echo ' <p><strong>'. $kol2['name'].'</strong>'.$kol2['id'].'</p>'; } вот примерно накидал. просто выводить хоть щас могу))) щас еще до ума доведу) извините что мозг парил не тем чем надо...каюсь.но вроде правильно изложил в начале какие задачт на прмере дома...про адресную строку поздно понял.