Funtik44
-
Posts
62 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Store
Posts posted by Funtik44
-
-
Ну а с точки зрения безопасности и быстродействия как себя ведет Joomla? Например если я добавляю поисковик на сайт т.е. некий кирпичик, уже готовый, взятый из Joomla, то код у этого кирпичика будет написан правильно с точки зрения безопасности (закрыт от sql-инъекций) и быстродействия (CSS используется в Joomla, или вообще написание кода при помощи CSS может только человек)?
-
Добрый день всем. Начал делать свой сайт и у меня возник следующий вопрос: Что лучше использовать для разработки сайта - CMS Joomla или выучить PHP и с нуля разрабатывать сайт на PHP и HTML?
PS "Лучше" - имеется ввиду более безопасно (для новичка) и более быстродейственно? Учитывая тот факт, что само программирование для меня на втором месте, на первом всетаки наличие своего сайта!
-
Вот что получается:
Поиск по базе:
<?php include ("config.php");
$search = mysql_real_escape_string($_POST['search']);
$res = mysql_query("SELECT `id`,`placename`,`description` from `places` where `description` like '%".$_POST['search']."%'", $db);
if (!$res) {echo "Запрос не прошел."; exit(mysql_error());}
$myrow = mysql_fetch_array($res);
?>Поиск по карте:
<script type="text/javascript">
var map, geoResult;
// Создание обработчика для события window.onLoad
YMaps.jQuery(function () {
// Создание экземпляра карты и его привязка к созданному контейнеру
map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]);
// Установка для карты ее центра и масштаба
map.setCenter(new YMaps.GeoPoint(37.64, 55.76), 10);
// Добавление элементов управления
map.addControl(new YMaps.TypeControl());
});
// Функция для отображения результата геокодирования
// Параметр value - адрес объекта для поиска
function showAddress (value) {
// Удаление предыдущего результата поиска
map.removeOverlay(geoResult);
// Запуск процесса геокодирования
var geocoder = new YMaps.Geocoder(value, {results: 1, boundedBy: map.getBounds()});
// Создание обработчика для успешного завершения геокодирования
YMaps.Events.observe(geocoder, geocoder.Events.Load, function () {
// Если объект был найден, то добавляем его на карту
// и центрируем карту по области обзора найденного объекта
if (this.length()) {
geoResult = this.get(0);
map.addOverlay(geoResult);
map.setBounds(geoResult.getBounds());
}else {
alert("Ничего не найдено")
}
});
// Процесс геокодирования завершен неудачно
YMaps.Events.observe(geocoder, geocoder.Events.Fault, function (geocoder, error) {
alert("Произошла ошибка: " + error);
})
}
</script>Вывод данных по базе и карте:
<form action="#" method="post" onsubmit="showAddress(this.address.value);return false;">
<p>
<input type="text" id="address" name="search" style="width:525px;" value="Москва" />
<input type="submit" value="Искать" />
</p>
<div id="YMapsID" style="width:600px;height:400px"></div>
</form>Не могу добиться того, чтобы все вместе работало, то одно работает, то другое. При таком коде не работает поиск по базе.
-
Я нашел такой скрипт, который осуществляет поиск по карте:
function showAddress (value) {
map.removeOverlay(geoResult);
var geocoder = new YMaps.Geocoder(value, {results: 1, boundedBy: map.getBounds()});
YMaps.Events.observe(geocoder, geocoder.Events.Load, function () {
if (this.length()) {
geoResult = this.get(0);
map.addOverlay(geoResult);
map.setBounds(geoResult.getBounds());
}else {
alert("Ничего не найдено")
}
});
YMaps.Events.observe(geocoder, geocoder.Events.Fault, function (geocoder, error) {
alert("Произошла ошибка: " + error);
})
}Он использует input id=address, у меня же стоит id=inputtext, как сделать input общий для всех, чтобы и карты искались по нему и контент в MySql?
-
Добрый день всем.
Есть сайт, при входе на страницу которого, пользователь вводит имя объекта в строку поиска, и на сайт выводится контент из MySql по запрашиваемому объекту (это все работает). На этой же странице я разместил API Яндекс.Карт. Необходимо добиться того, чтобы вместе с контентом на карте отображалось место. Ну например пользователь ввел город "Москва" вывелась информация по городу Москва и заодно на карте появилась собственно сама Москва. Как мне это сделать?
Вот скрипт поиска:
<?php include ("config.php");
$search = mysql_real_escape_string($_POST['search']);
$res = mysql_query("SELECT `id`,`placename`,`description` from `places` where `description` like '%".$_POST['search']."%'", $db);
if (!$res) {echo "Запрос не прошел."; exit(mysql_error());}
$myrow = mysql_fetch_array($res);
?>Вот пример того, как поиск выводит данные на сайт:
<form action="" method=post>
<input id="inputtext" type="text" name="search" />
<input id="inputbut" type="image" src="images/search.gif" name="submit">
</form>Вот стандартный скрипт взятый с сайта http://api.yandex.ru для вставки карты:
<script src="http://api-maps.yandex.ru/1.1/index.xml?key=Здесь мой ключь активации=="
type="text/javascript"></script>
<script type="text/javascript">
window.onload = function () {
var map = new YMaps.Map(document.getElementById("YMapsID"));
map.setCenter(new YMaps.GeoPoint(37.64, 55.76), 10);
map.addControl(new YMaps.TypeControl());
map.addControl(new YMaps.ToolBar());
map.addControl(new YMaps.Zoom());
map.addControl(new YMaps.MiniMap());
map.addControl(new YMaps.ScaleLine());
var zoomControl = new YMaps.Zoom();
}
</script> -
-
Непонял что за проблема. Объясните подробнее.
Проблемма в следующем:
в IE набираю http://site.ru - всё работает отлично, сайт грузится. Тоже самое делаю в Mozilla, Chrome и Opera - пишется, что невозможно отобразить страницу!
PS если ввожу W:\home\site.ru\www\index.php то работает везде.
PPS Стоит Denwer.
-
о, а я это и не заметил
конечно же не будет работать. создайте в папке home папку site.ru а в ней папку www и в эту папку закиньте ваш индексный файл, после запуска денвера, наберите адрес вашего сайта типа: site.ru и он откроется.
Так я так и делаю. У меня есть следующая папка и файл W:\home\site.ru\www\index.php В IE я набираю site.ru и он работает, в остальных делаю тоже самое, он не работает(((
-
-
-
Не могу добавить значение INDEX полю description? Как это сделать в phpmyadmin? Пробовал запрос написать, тоже не получается.
Какие-нибудь еще поля нужно индексировать и у меня 3 поля имеют PRIMARY, это правильно?
Мне кажется я тут накосячил, наверное только одно поле с индексом должно быть в таблице...
-
И еще, есть такой метод (я прочитал) борьбы со взломом - усечение входных параметров (' + LeftStr(id, 4) + '), это куда добавлять и как это работает, точнее как правильно добавить вот сюда:
$res = mysql_query("SELECT `id`,`placename`,`description` from `places` where `description` like '%".$_POST['search']."%'", $db);
-
Появились следующие проблеммы:
1. В Mozill'e, Chrome и Oper'e скрипт поиска не отрабатывает (хотя в IE всё идеально):
<?php include ("config.php");
$search = mysql_real_escape_string($_POST['search']);
$res = mysql_query("SELECT `id`,`placename`,`description` from `places` where `description` like '%".$_POST['search']."%'", $db);
if (!$res) {echo "Запрос не прошел."; exit(mysql_error());}
$myrow = mysql_fetch_array($res);
?>2. В Mozill'e, Chrome и Oper'e сайт не работает если я перехожу по прямому адресу (http://site.ru), если же открываю локальный адрес (file:///W:/home/site.ru/www/index.php), то все работает (за исключением поиска). И еще в Chrome при переходе на страницу со скриптом, он открывает не страницу, а код отображает на экране.
Ребят, не подскажите, в чем тут может быть дело?
-
-
Вот что получилось, что здесь не правильно, подскажите пожалуйста?
<?php include ("config.php");
$_POST['search'] = substr(htmlspecialchars(trim($_POST['search'])), 0, 100);
$res = mysql_query("SELECT id, placename, description from places where '%$_POST['search']%'", $db);
if (!$res) {echo "Запрос не прошел."; exit(mysql_error());}
$myrow = mysql_fetch_array($res);
?>
.
.
.
<body>
.
.
<input id="inputtext" type="text" name="search" />
.
.
</body> -
-
-
-
Нашел причину - бред бредовский, в ноутпаде++ был открыт config.php и у меня на компе был еще сайт с файлом config.php. Короче ноутпад++ по умолчанию открыл другой файл в который я и вносил изменения.
-
Да я и с ним пробовал, ошибка та же самая.
PS admin это пользователь созданный мной в БД.
-
Ну собственно Denwer стоит.
-
а причём здесь данные под которыми вы входите в виндовс ? на мускуль свои пароли и логины
добавил: нет не весь тока касательно [MySql]
В том то и дело, почему он подставляет в теле ошибки мою учетку windows?
Вот php.ini:
[MySQL]
; Allow or prevent persistent links.
mysql.allow_persistent = On
; Maximum number of persistent links. -1 means no limit.
mysql.max_persistent = -1
; Maximum number of links (persistent + non-persistent). -1 means no limit.
mysql.max_links = -1
; Default port number for mysql_connect(). If unset, mysql_connect() will use
; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the
; compile-time value defined MYSQL_PORT (in that order). Win32 will only look
; at MYSQL_PORT.
mysql.default_port =
; Default socket name for local MySQL connects. If empty, uses the built-in
; MySQL defaults.
mysql.default_socket =
; Default host for mysql_connect() (doesn't apply in safe mode).
mysql.default_host =
; Default user for mysql_connect() (doesn't apply in safe mode).
mysql.default_user =
; Default password for mysql_connect() (doesn't apply in safe mode).
; Note that this is generally a *bad* idea to store passwords in this file.
; *Any* user with PHP access can run 'echo get_cfg_var("mysql.default_password")
; and reveal this password! And of course, any users with read access to this
; file will be able to reveal the password as well.
mysql.default_password =
; Maximum time (in seconds) for connect timeout. -1 means no limit
mysql.connect_timeout = 60
; Trace mode. When trace_mode is active (=On), warnings for table/index scans and
; SQL-Errors will be displayed.
mysql.trace_mode = Off
-
Это я пароль скрыл)))
Обратите внимание, что в ошибке указана "Моя фамилия" (я её тоже скрыл) и инициалы (моя фамилия слитно с инициалами это моё доменное имя, под которым я вхожу в Windows) вместо admin:
Warning: mysql_query() [function.mysql-query]: Access denied for user 'Моя фамилия'@'localhost' (using password: NO) in W:\home\site.ru\www\config.php on line 7
С кодом всё в порядке, неправильный пароль. Интерсно это у вас такой пароль из звёздочег или вы его от нас так скрыли ?mysql_select_db("wtgdb",$db); - конечно в данном случае не суть, но не забываем
А какие у вас настройки в php.ini касательно [MySQL] ?
Весь текст файла выложить?
-
Код покажите, так долго можно гадать куда вы там чё не так зделали
wtgdb это БД, places это таблица.
Это конфигурационный файл (config.php):
<?php
$db = mysql_connect("localhost", "admin", "******");
mysql_select_db("wtgdb",$db)
?>HTML:
<?php include ("config.php");
$res = mysql_query("SELECT id, placename, description, from places where id = 1", $db);
if (!$res) {echo "Запрос не прошел."; exit(mysql_error());}
$myrow = mysql_fetch_array($res);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
.
.
.
CMS или PHP
in HTML Coding
Posted
В вопросе скорее среднестатистический сайт, который по набору разной функциональности также тянет на среднестатистический сайт. Скорее даже сайт - услуга. Что касается CMS я так понял, её конечно можно использовать, но она дает некую неповоротливость сайту. Т.е. я не всегда смогу сделать так как задумал, придется либо переделовать либо придумывать способы обхода (например визуально нарисовал сайт, а воплотить на CMS один в один врядли удасться).
В конце концов, можно же самому сделать сайт, пусть он будит кривой и не безопасный, но со временем либо доработать, либо заказать, чтобы его переписали.
Не савсем понятно к чему нужно соблюдать такие критерии? Это где-то прописано на законодательном уровне? Я думаю врядли, а бесплатные CMS и движки (типа PHP) на то они и созданы, чтобы можно было самому начать.