powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / А как результат с одинаковыми айдишками
18 сообщений из 68, страница 3 из 3
А как результат с одинаковыми айдишками
    #38224804
авторв коде могут быть небольшие погрешности
c user_id промазал! ;) но, там по аналогии - такой-же параметр!!
:user_id и в execute!!!
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38225214
alfaperk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Благодарю за отклик!
Этот абсолютно новое для меня вещь выдаёт ошибку :
Код: sql
1.
Fatal error: Uncaught exception 'PDOException' with message 'invalid data source name' in F:\home\search\www\search.php:1495 Stack trace: #0 F:\home\search\www\search.php(1495): PDO->__construct('') #1 {main} thrown in F:\home\search\www\search.php on line 1495
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38225230
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38225232
http://php.net/manual/ru/pdo.connections.php - ман на русском (с примерами mysql)...
http://habrahabr.ru/post/137664/ - более детальное описание!
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38226384
alfaperk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вместо локалхоста поставил 127.0.0.1 а также включил в try {

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
	try {  
  
  $dbh = new PDO('mysql:host=127.0.0.1;dbname=jsalon', $user, $pass);
 
}  
catch(PDOException $e) {  
    echo $e->getMessage();  
}




Стал выдавать ощибку типа : invalid data source name
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38226491
Код: php
1.
var_dump(PDO::getAvailableDrivers());


выложи сюда получившийся результат
П.С. php очень мощный и гибкий инструмент, но с ним всё таки нужно уметь работать ;)
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38226658
alfaperk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Просто в коде ставлю результатов не выдает
Код: php
1.
var_dump(PDO::getAvailableDrivers());

.

Ставлю сюда
Код: php
1.
2.
3.
4.
catch(PDOException $e) {  
    echo $e->getMessage();  
	var_dump (PDO::getAvailableDrivers());
}



выдает array(1) { [0]=> string(5) "mysql" }
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38226724
авторвыдает array(1) { [0]=> string(5) "mysql" }
уже не плохо - будем считать, что драйвер пдо для мускула у тебя есть! ;)
давай дальше думать:
версия операционной системы + версия веб-сервера + версия PHP?
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38226848
alfaperk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
XP service pack 3

php 5.3.3

Версия: Денвер-3 2010-11-07
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38226849
alfaperk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
invalid data source name

Мне кажется там где то название неправильно передаём.
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38227240
авторМне кажется там где то название неправильно передаём.
да ладно! чего тебе мозг выносить (сам установил MySQL попробовал - вот что получилось ;)
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
mysql_connect('localhost', '', '');
        mysql_select_db('world');
        
        $query = sprintf('SELECT country.Continent, country.Name, GROUP_CONCAT(city.Name) AS Cities
                            FROM country 
                            LEFT JOIN city ON city.CountryCode = country.Code                        
                            WHERE ((country.Continent LIKE "%s")
                            AND (country.Name LIKE "%s"))
                            GROUP BY country.Code
                            ORDER BY Continent, Name;',
                (isset($_GET['continent']) ? $_GET['continent'] : '') . '%',
                (isset($_GET['country']) ? $_GET['country'] : '') . '%'
        );
                      
        $result = mysql_query($query);
        
        $world = array();
        while ($row = mysql_fetch_assoc($result)) {
            $row['Cities'] = isset($row['Cities']) ? explode(',', $row['Cities']) : array();
            $world[] = $row;
        }        
        mysql_close();
        
        var_dump($world);


в зипе файл для создания БД world для MySQL!
http://www.heidisql.com/download.php - бесплатный визуальный редактор для MySQL!

P.S. MySQL_PDO у тебя либо не подключен, либо фаервол, либо инопланетяне ИМХО ;)
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38227334
alfaperk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо ща папробую
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38231814
alfaperk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Такая вещь получилась вроде работает

Код: sql
1.
SELECT * FROM `add_new_car` AS a INNER JOIN `image_add_car` AS b ON a.id_add_car = b.user_id WHERE (b.user_id, b.id_image_add_car) IN (SELECT user_id, MIN(id_image_add_car) FROM image_add_car GROUP BY user_id) AND a.mark='$mark' and a.model='$model' and a.year='$year' ORDER BY a.id_add_car
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38234129
alfaperk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Могли бы помочь внедрить это условие в запрос

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
$where = array();
$whereclause = '';

if (!empty($mark)) {
    $where[] = "a.mark = '$model'";
}
if (!empty($model)) {
    $where[] = "a.model = '$mark'";
}
if (!empty($year)) {
    $where[] = "a.year = $year";
}
if (count($where > 0)) {
    $whereclause = 'WHERE ' . join(' AND ', $where);
}




Код: sql
1.
SELECT * FROM `add_new_car` AS a INNER JOIN `image_add_car` AS b ON a.id_add_car = b.user_id WHERE (b.user_id, b.id_image_add_car) IN (SELECT user_id, MIN(id_image_add_car) FROM image_add_car GROUP BY user_id) AND a.mark='$mark' and a.model='$model' and a.year='$year' ORDER BY a.id_add_car
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38234156
мог бы выложить дамп этих двух таблиц сюда?
без них ИМХО разговор безпредметен...
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38234198
alfaperk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здесь дамп приложил
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38234520
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
-- --------------------------------------------------------
-- Хост:                         localhost
-- Версия сервера:               5.6.10 - MySQL Community Server (GPL)
-- ОС Сервера:                   Win32
-- HeidiSQL Версия:              7.0.0.4387
-- --------------------------------------------------------

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET NAMES utf8 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;

-- Дамп структуры базы данных jsalon
CREATE DATABASE IF NOT EXISTS `jsalon` /*!40100 DEFAULT CHARACTER SET cp1251 */;
USE `jsalon`;


-- Дамп структуры для процедура jsalon.find_by_mark_model_year
DELIMITER //
CREATE DEFINER=`root`@`127.0.0.1` PROCEDURE `find_by_mark_model_year`(IN `mark` VARCHAR(100), IN `model` VARCHAR(100), IN `year` VARCHAR(100))
    READS SQL DATA
BEGIN
	SET mark = CONCAT(IFNULL(mark, ''), '%');
	SET model = CONCAT(IFNULL(model, ''), '%');
	SET year = CONCAT(IFNULL(year, ''), '%');
	
	SELECT a.*, b.big, b.small
	FROM add_new_car AS a 
	LEFT OUTER JOIN (
		SELECT user_id, MIN(big) AS big, small 
		FROM image_add_car
		GROUP BY user_id
	) AS b ON a.id_add_car = b.user_id 
	WHERE a.mark LIKE mark AND a.model LIKE model AND a.year LIKE year 
	ORDER BY a.id_add_car;	
END//
DELIMITER ;
/*!40101 SET SQL_MODE=IFNULL(@OLD_SQL_MODE, '') */;
/*!40014 SET FOREIGN_KEY_CHECKS=IF(@OLD_FOREIGN_KEY_CHECKS IS NULL, 1, @OLD_FOREIGN_KEY_CHECKS) */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;


Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
        $mark   =& $_GET['mark'];
        $model  =& $_GET['model'];
        $year   =& $_GET['year'];
        
        mysql_connect('localhost', '', '');
        mysql_select_db('jsalon');
        
        $query = sprintf('call find_by_mark_model_year("%s", "%s", "%s");',
                $mark,
                $model,
                $year
        );
               
        $result = mysql_query($query);
        while($rows = mysql_fetch_array($result, MYSQL_ASSOC)) {
            var_dump($rows);        
        }
        mysql_close();
...
Рейтинг: 0 / 0
А как результат с одинаковыми айдишками
    #38234653
alfaperk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо огромное буду тестить.
...
Рейтинг: 0 / 0
18 сообщений из 68, страница 3 из 3
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / А как результат с одинаковыми айдишками
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]