<?php
//Подключаемся к базе с логином и паролем, принудительно задаем кодировку операций.
$db = mysql_connect ("localhost","user","password");
mysql_query('SET character_set_database = utf8');
mysql_query('SET NAMES utf8');
mysql_select_db ("data_base",$db) or die("Database Error: ".mysql_error());
//Предполагается, что файл strings.txt, который надо разобрать, лежит в той же папке, что и скрипт.
$fp = fopen("test.txt", "r");
// Открываем файл в режиме чтения
$id = 0;
if ($fp)
{
while (!feof($fp))
{ //Считываем файл построчно в переменную stringtext
$stringtext = fgets($fp);
if (!empty($stringtext ))
{
$id++;
//Если строка считалась, заносим ее в базу. Первый параметр NULL, так как база берет на себя его заполнение с последовательным увеличением.
$query = 'UPDATE countries SET text = "'.mysql_escape_string($stringtext).'" WHERE id = ' . $id;
mysql_query($query) or die(mysql_error());
}
}
}
else echo "Ошибка при открытии файла";
fclose($fp);
?>
---------- Добавлено 22.07.2014 в 14:11 ----------
Ошибся немного.
"WHERE id =" надо поменять на "WHERE country_id ="
Поменял как вы написали, по прежнему записывает в отдельные строки вместо того, чтобы добавлять в уже имеющиеся..
Присущ: Я не знаю название бренда (что именно у вас). Например: "Самарское заречье" или "Заречье". Если "Пупкин и компания друзей", само всплывет без усилий.
Соц факторы это не конкретно твитер или другая соц сеть в отдельности. Чтоб ответить надо анализировать тематику в привязке к конкретному сайту.
Присущ: WebCreativo, По названию сайта если он есть бренд, то вывести не сложно, и не важен возраст, необходима только региональность и соц факторы + микро разметка.
Дельный совет, а скажите разве региональность в данном случае будет иметь вес, запрос ведь получается брендовый? И какие по вашему мнению соц факторы наиболее продуктивны(Твиттер)?
amerika: Рано ему еще по вч двигаться, хотя почву подготовить можно. Какая тематика хоть?
Туризм, дело в том что у сайта такое же название как и у уже существующей компании на этом рынке, а по названию компании делают ткчу запросов, вот заказчик и хочет вывести его первоначально в топ именно под название своего сайта и компании-бренда на которую запросы идут
---------- Добавлено 24.05.2014 в 19:22 ----------
siv1987: А мы вам, простите, как должны помочь?.. Мало ли вы что там в htaccess добавляете. А может и не htaccess дело а в неправильных путях к стилям.
Пути правильные так как только отключаю htaccess, стили работают.
Ну может кто сталкивался с подобным и может подсказать как решить эту проблему
<?php
/*-----------------Подключение к базе данных----------------*/
function db_connect()
{
$host='localhost'; // имя хоста (уточняется у провайдера)
$database='data'; // имя базы данных, которую вы должны создать
$user='user'; // заданное вами имя пользователя, либо определенное провайдером
$pswd='123456'; // заданный вами пароль
$connection = mysql_connect($host, $user, $pswd) or die("Не могу соединиться с MySQL.");
mysql_query("SET NAMES utf8");
mysql_select_db($database) or die("Не могу подключиться к базе.");
return $connection;
}
/*-----------------////////////////////////----------------*/
/*-----------------Вывод стран на страницу страны----------------*/
function db_result_to_array($result)
{
$res_array = array();
/*-----------------Вывод страны на страницу страны----------------*/
function get_country($id)
{
db_connect();
/* $query = ("SELECT * FROM countries WHERE iso='$id' "); */
$query = ("SELECT c.iso AS iso, c.local_name AS local_name, ci.name AS name FROM countries AS c LEFT JOIN cities AS ci ON c.iso=ci.iso WHERE c.iso='$id' ");
/*-----------------Вывод городов на страницу страны----------------*/
function get_city($id)
{
db_connect();
$query = ("SELECT * FROM cities WHERE name='$id' ");
$result = mysql_query($query);
$row = mysql_fetch_array($result);
return $row;
}
?>
Поля и параметр cities
id iso local_name type in_location geo_lat geo_lng db_id
1 AD Andorra CO NULL 42.50000000000 1.50000000000 AD
Поля и параметр countries
d iso local_name type in_location geo_lat geo_lng db_id
1 AD Andorra CO NULL 42.50000000000 1.50000000000 AD
---------- Добавлено 31.12.2013 в 04:07 ----------
bay_ebook: ну как минимум заменяем это на
function get_country($id)
{
db_connect();
$query = ("SELECT c.iso AS iso, c.local_name AS local_name, ci.name AS name FROM countries AS c LEFT JOIN cities AS ci ON c.iso=ci.iso WHERE c.iso='$id' ");
$result = mysql_query($query);
$row = db_result_to_array($result);
return $row;
}
а вот это
function db_result_to_array($result)
{
$res_array = array();
---------- Добавлено 22.07.2014 в 14:11 ----------
Ошибся немного.
"WHERE id =" надо поменять на "WHERE country_id ="
Поменял как вы написали, по прежнему записывает в отдельные строки вместо того, чтобы добавлять в уже имеющиеся..
Структуру таблицы покажите. И еще - первая строка в файле - это описание к первой (id = 1) стране в базе?
country_id - 1
country_ru - Австралия
name_en - Australia
code - AU
text - пусто
title - пусто
Не хватает условия.
То есть
А вот что за условие - нужно смотреть. Возможно порядковый номер строки равен id в таблице.
А как сделать условие, чтобы раскидать строки из файла по строкам из базы например с 1 по 200 id по порядку
Я не знаю название бренда (что именно у вас). Например: "Самарское заречье" или "Заречье". Если "Пупкин и компания друзей", само всплывет без усилий.
Соц факторы это не конкретно твитер или другая соц сеть в отдельности. Чтоб ответить надо анализировать тематику в привязке к конкретному сайту.
Понял, еще раз спасибо за полезный совет
WebCreativo, По названию сайта если он есть бренд, то вывести не сложно, и не важен возраст, необходима только региональность и соц факторы + микро разметка.
Дельный совет, а скажите разве региональность в данном случае будет иметь вес, запрос ведь получается брендовый? И какие по вашему мнению соц факторы наиболее продуктивны(Твиттер)?
Лучше слитно, зону РФ не берите.
Рано ему еще по вч двигаться, хотя почву подготовить можно. Какая тематика хоть?
Туризм, дело в том что у сайта такое же название как и у уже существующей компании на этом рынке, а по названию компании делают ткчу запросов, вот заказчик и хочет вывести его первоначально в топ именно под название своего сайта и компании-бренда на которую запросы идут
---------- Добавлено 24.05.2014 в 19:22 ----------
Я вот правда не знаю на сколько это реально..
А мы вам, простите, как должны помочь?.. Мало ли вы что там в htaccess добавляете. А может и не htaccess дело а в неправильных путях к стилям.
Пути правильные так как только отключаю htaccess, стили работают.
Ну может кто сталкивался с подобным и может подсказать как решить эту проблему
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^([a-zA-Z0-9]+)/$ index.php?view=$1 [L]
RewriteRule ^([a-zA-Z0-9]+)/?$ index.php?view=country&id=$1 [L]
RewriteRule ^([^/]*)/([^/]*)$ /index.php?view=$1&id=$2 [L]
RewriteRule ^hotels_([^/]*)$ index.php?view=h_country&id=$1 [L]
RewriteRule ^city/([^/]*)$ index.php?view=city_2&id=$1 [L]
Здесь мне кажется проблема в том, что массив почему то пустой приходит
Поля и параметр cities
id iso local_name type in_location geo_lat geo_lng db_id
1 AD Andorra CO NULL 42.50000000000 1.50000000000 AD
Поля и параметр countries
d iso local_name type in_location geo_lat geo_lng db_id
1 AD Andorra CO NULL 42.50000000000 1.50000000000 AD
---------- Добавлено 31.12.2013 в 04:07 ----------
ну как минимум заменяем это на
а вот это на
Сейчас заработало к странице страны делается выборка с ее городами. Большое вам спасибо за помощь.
Но теперь почему то перестало выводить параметры самой страны ее название <h1><?php echo $country['local_name']?></h1>
---------- Добавлено 31.12.2013 в 04:47 ----------
Еще раз спасибо за помощь, все заработало.