Deutsch

вытащить и показать данные из PHP MySQL базы данных

684  
Zahar знакомое лицо19.12.09 23:23
Zahar
NEW 19.12.09 23:23 
Решил внести некотрые корректуры в скрипт и как не мучался никак (чисто) не получается.
Краткое описание проблемы:
из строки ABC Reisebüro (2049 Hits)
http://www.zahar.de/bigmir/link/onelink.php?showid=372
хотелось бы сделать
ABC Reisebüro (2049 Hits, 106345 Views, Banner abgeschaltet)
или
ABC Reisebüro (2049 Hits, 106345 Views, Banner angeschaltet)
или
ABC Reisebüro (2049 Hits, 106345 Views, Banner nicht vorhanden)
Осталось ещё две недели отпуска, кто бы мог помочь?
Заранее спасибо за любой совет.
Роман
#1 
Sergo2008 местный житель20.12.09 09:26
Sergo2008
NEW 20.12.09 09:26 
в ответ Zahar 19.12.09 23:23
Если я правильно понял вопрос, то имеется строка - "ABC Reisebüro (2049 Hits)", которая берётся из базы данных, и её надо в соответствии с условием, переделать в один и трёх приведённых вариантов?
Если так, то не вижу не каких проблем в этом.
В ответ на:

switch ($i) { // условие
case 0: echo "ABC Reisebüro (2049 Hits, 106345 Views, Banner abgeschaltet)"; break;
case 1: echo "ABC Reisebüro (2049 Hits, 106345 Views, Banner angeschaltet)"; break;
case 2: echo "ABC Reisebüro (2049 Hits, 106345 Views, Banner nicht vorhanden)"; break;
}

Если не то, и данная строка идёт где то внутри текста, то тут нужно применять регулярное выражение preg_replace - http://php.net/manual/en/function.preg-replace.php, которое просто найдёт в общем тексте к примеру концовку "2049 Hits)", и заменит её на к примеру "2049 Hits, 106345 Views, Banner abgeschaltet)".
#2 
Zahar знакомое лицо20.12.09 16:59
Zahar
NEW 20.12.09 16:59 
в ответ Sergo2008 20.12.09 09:26
Сейчас попробую, спасибо!
#3 
R1111 завсегдатай20.12.09 18:52
NEW 20.12.09 18:52 
в ответ Zahar 19.12.09 23:23
А что SQL запрос не прокатывает? Типа SELECT имя поля из которой нужна строка FROM имя таблицы WHERE условие выбора
Данные из MYSQL обычно через запрос вытаскивают. Посмотреть структуру базы , можно через PHP MYadmin.
Напишите имя базы, талицы и поля содержащего нужные строки, я вам напишу полный скрипт
Web Site maker, Erstellen von Internetseiten und SEO Optimierung
#4 
Zahar знакомое лицо22.12.09 23:09
Zahar
NEW 22.12.09 23:09 
в ответ R1111 20.12.09 18:52, Последний раз изменено 22.12.09 23:19 (Zahar)
Я был в раздумьях, как бы данные для тестирования получше подготовить продублировал папку link ==>link-test.
И вытащил файл, см. скрепку.
После изменений этот линк-
http://www.zahar.de/bigmir/link-test/onelink.php?showid=372
показывает вроде правильно
а переход в категорию опять с ошибкой -
http://www.zahar.de/bigmir/link-test/index.php?showcat=1
или тут -
http://www.zahar.de/bigmir/link-test/onelink.php?showid=341
вторая часть предложения не видна.
В чём тут дело никак не могу разобраться.
#5 
Sergo2008 местный житель24.12.09 10:38
Sergo2008
NEW 24.12.09 10:38 
в ответ Zahar 22.12.09 23:09
Разбираться в коде нет времени и желания, поэтому следующее, если я правильно понял.
1. Найди запрос в базу, от куда берутся все эти три параметра, и если берётся только один, а именно для хитов, то просто добавь в запрос выборку остальных двух.
2. После выборки, свяжи все три параметра в один, подставив эти три параметра в тот что для хитов задаётся. И больше не чего не надо, вместо просто количество хитов, будут все 3 параметра.
Это при условии что все 3 параметра существуют в базе для данного линка, а я так понимаю это так, иначе от куда бы брались свои данные для каждого линка. У тебя в атаче, судя по запросу, идёт выборка всех полей таблицы, а значит получить всё необходимое просто - $param_link='('.$thiscat['hits'].','.$thiscat['wiews'].','.$thiscat['banner'].')'; - Где $param_link, это то что содержит то что выводится в нормальном виде - хиты. Названия полей таблицы взял для примера, в том числе и скобки, они возможно подставляются в другом месте. Это лишь пример, как объединить три полученных параметра из таблицы.
#6 
Zahar знакомое лицо25.12.09 03:01
Zahar
25.12.09 03:01 
в ответ Sergo2008 24.12.09 10:38
Спасибо за совет! Я и так и сяк пробовал - но никак не получается ... Так моего отпуса однозначно не хватит...
Чего-то я не понимаю?
Файл onelink.php ссылается на showlink.inc.php а тот в свою очередь на banneviews.php
и строка выдаётся (по идее) в правильном порядке,
(2112 Hits, 30022 Views, Banner angeschaltet)
http://www.zahar.de/bigmir/link-test/onelink.php?showid=374
#
Кода я перехожу в категорию и вызываю index.php?showcat=1 файл ссылается на также showlink.inc.php а тот в свою очередь на banneviews.php
вадаётся ерунда какая-то
Baikal Reisebüro (2112 Hits, Views, Banner abgeschaltet)
Разве дело не в файле banneviews.php, который надо дополнить?
#7 
Messer гость08.01.10 16:20
Messer
NEW 08.01.10 16:20 
в ответ Zahar 25.12.09 03:01
Блин, кое-как осилил код...
Не понял, зачем делать запрос в bannerviews.php по новой.
У тебя же есть $links со всеми полями, где то же самое
По-моему это должно было бы быть так:
Кусок из showlink.inc.php (убрал запятую на всякий случай):

echo " ($links[counter] Hits";
require("bannerviews.php");

А теперь и bannerviews.php:

<?php
if ($links['bannerviews'] != '') {
// hier ist unsere Komma jetzt
if ( $links['bannerrotate'] == 1 ) {
echo ", Banner ist aktiviert, und wurde <b> {$links['bannerviews']}</b> Mal angezeigt";
} else {
echo ", Banner ist deaktiviert, und wurde <b> {$links['bannerviews']}</b> Mal angezeigt";
}
}
?>

#8 
Zahar знакомое лицо09.01.10 15:25
Zahar
NEW 09.01.10 15:25 
в ответ Messer 08.01.10 16:20
Спасибо Messer! Это то, что я хотел!!!
Пока я ещё немного потестирую и активирую код (к концу месяца) в главной папке.
http://www.zahar.de/bigmir/link-messer/onelink.php?showid=372
http://www.zahar.de/bigmir/link-messer/index.php?showcat=1
http://www.zahar.de/bigmir/link-messer/top.php
Я очень рад, что одной проблемкой стало меньше.
Ещё раз спасибо!
#9