Нужна помощь с php

V
На сайте с 21.06.2007
Offline
124
538

Создаваемый сайт является экзаменационной работой. Собственно было создано подобие базы данных с галереей изображений и с поисковиком, на локальном сервере работает, на внешнем хостинговом нет, никак не могу разобраться в чем дело. Если нужно могу выложить или прислать файлы и базу данных.

А так вот часть php-кода запроса, который на сервере не работает...и выводит die ("")

$requete=mysql_query("SELECT * FROM villes WHERE 
ville like '%$ville%' and ville like '$ville_liste'
and nation like '%$nation%' and nation like '$nation_liste'
and domaine like '%$domaine%'
and denomination like '%$denomination%'
and titre like '%$titre%'
and (auteur like '%$auteur%' or auteur like '%$auteur_liste%')
and ecole like '%$ecole%'

and (annee ".$comparateur."'$annee' or annee like '')
and (technique like '%$technique%' or technique like '%$technique_liste1%')
and (sujet like '%$sujet%' or sujet like '%$sujet_liste%')

ORDER BY ville") or die ("impossible selectionner les données");

При этом к базе данных подключается, в файле conf все нормально прописано...ощущение, что проблемы непосредственно с mysql на сервере хостинга, но вроде все нормально.

Прошу помощи...Возможно у кого-то будет возможность протестить и на сервере и на локалке и вы сможете заметить проблему

Во вложенном файле zip находятся все файлы и таблица mysql

также вот ссылка если нажать на lancer la recherche собственно выйдет die на локалке выходит база данных изображений

zip CAPITART.zip
Компания по устройству буронабивных свай (https://drilling-msk.ru/)
[Удален]
#1

Проблема в следующей строке

and (annee ".$comparateur."'$annee' or annee like '')

Вы получаете содержимое переменной из POST.

Взгляните на то, что отправляете. Приходит null.

            

<select name="comparateur">
<option>&gt;=</option>
<option>&lt;=</option>
</select>

В итоге, вышеуказанный запрос приобретает вид:

and (annee '$annee' or annee like '')

Исправьте:

index.html

            

<select name="comparateur">
<option value="0">&gt;=</option>
<option value="1">&lt;=</option>
</select>

resultats.php

$comparateur = intval( $_POST['comparateur'] ) ? "<=" : ">=";

J
На сайте с 20.02.2014
Offline
120
jkm
#2

Не мешало бы вызывать mysql_error перед аварийным завершением скрипта.

И подключаться к базе нужно до того как вызываете mysql_real_escape_string.

Дело в том, что mysql_real_escape_string производит экранирование с учетом кодировки соединения с базой данных, и если нет открытого соединения, возвратит false.

V
На сайте с 21.06.2007
Offline
124
#3
teent:
Проблема в следующей строке
and (annee ".$comparateur."'$annee' or annee like '')


Вы получаете содержимое переменной из POST.
Взгляните на то, что отправляете. Приходит null.

            

<select name="comparateur">
<option>&gt;=</option>
<option>&lt;=</option>
</select>

В итоге, вышеуказанный запрос приобретает вид:
and (annee '$annee' or annee like '')


Исправьте:
index.html
            

<select name="comparateur">
<option value="0">&gt;=</option>
<option value="1">&lt;=</option>
</select>

resultats.php

$comparateur = intval( $_POST['comparateur'] ) ? "<=" : ">=";

БОЖЕ....спасибо вам огромное!! Заработало...

TF-Studio
На сайте с 17.08.2010
Offline
334
#4

Тут куча проблем.

Столько лайков положить сервер, как минимум, в состоянии.

Нету защиты совершенно

Всё ещё лучший способ заработка для белых сайтов: GoGetLinks (https://www.gogetlinks.net/?inv=fahbn8).
V
На сайте с 21.06.2007
Offline
124
#5

У меня тут же возник следующий вопрос: Предполагается для галереи создать карту с метками, в метках ссылки на отдельные изображения с описанием, тема наверное изъезженная. Я уже даже что-то подобное реализовывал. Но там с php не сталкивался так как сайт на джумле, и были уже сформированы уникальные ссылки, которые просто добавил в метки. Здесь же пришел к выводу, что на каждое изображение в галереи у меня ссылка не уникальна, имеет вид В базе данных каждое изображение, каждый notice имеет отдельный cle. Скину код который за это отвечает:

echo "<form action='notice.php' method='post'>";

echo "<input type='hidden' name='cle' value='".$ligne['cle']."'></input>";
echo "<input type='submit' value='Notice détaillée'>";
echo "</form>";

Использовать в качестве карт решил яндекс.карты с метками:

<script src="//api-maps.yandex.ru/2.0/?load=package.full&lang=fr-FR" type="text/javascript"></script>

<script src="http://yandex.st/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
ymaps.ready(init);

function init () {
var myMap = new ymaps.Map("map", {
center: [54.83, 37.11],
zoom: 5
}),
myPlacemark = new ymaps.Placemark([55.907228, 31.260503], {

balloonContentHeader: "",
balloonContentBody: ".......",
balloonContentFooter: "",
hintContent: ""
});

myMap.geoObjects.add(myPlacemark);


myMap.balloon.open([51.85, 38.37], "?????????? ??????", {

closeButton: false
});


myMap.hint.show(myMap.getCenter(), "?????????? ?????", {

showTimeout: 1500
});
}
</script>

Допустим в

balloonContentBody: ".......",
что мне нужно вставить чтобы перейти на определенное изображение, пробовал вставлять php-код никак, туда скорее всего подходит только ссылка? Как быть? Возможно подскажите как сделать уникальные ссылки.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий