<?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); ?>
Поменял как вы написали, по прежнему записывает в отдельные строки вместо того, чтобы добавлять в уже имеющиеся..
country_id - 1
country_ru - Австралия
name_en - Australia
code - AU
text - пусто
title - пусто
$query = 'UPDATE countries SET text = "' . mysql_escape_string($stringtext) . '" WHERE .... ';
А как сделать условие, чтобы раскидать строки из файла по строкам из базы например с 1 по 200 id по порядку
Понял, еще раз спасибо за полезный совет
Дельный совет, а скажите разве региональность в данном случае будет иметь вес, запрос ведь получается брендовый? И какие по вашему мнению соц факторы наиболее продуктивны(Твиттер)?
Лучше слитно, зону РФ не берите.
Туризм, дело в том что у сайта такое же название как и у уже существующей компании на этом рынке, а по названию компании делают ткчу запросов, вот заказчик и хочет вывести его первоначально в топ именно под название своего сайта и компании-бренда на которую запросы идут---------- Добавлено 24.05.2014 в 19:22 ----------Я вот правда не знаю на сколько это реально..
Пути правильные так как только отключаю 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]
Здесь мне кажется проблема в том, что массив почему то пустой приходит
<?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(); $count = 0; while($row = mysql_fetch_array($result)) { $res_array[$count] = $row; $count++; } return $res_array; } function get_countries() { db_connect(); $query = "SELECT * FROM countries"; $result = mysql_query($query); $result = db_result_to_array($result); return $result; } /*-----------------////////////////////////----------------*/ /*-----------------Вывод страны на страницу страны----------------*/ 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' "); $result = mysql_query($query); $row = mysql_fetch_array($result); return $row; } /*-----------------////////////////////////----------------------*/ /*-----------------Вывод городов на страницу страны----------------*/ 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 ----------
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(); $count = 0; while($row = mysql_fetch_array($result)) { $res_array***91;$count***93; = $row; $count++; } return $res_array; }
function db_result_to_array($result) { $res_array = array(); $count = 0; while($row = mysql_fetch_assoc($result)) { $res_array[$count]= $row; $count++; } return $res_array; }
Сейчас заработало к странице страны делается выборка с ее городами. Большое вам спасибо за помощь.
Но теперь почему то перестало выводить параметры самой страны ее название <h1><?php echo $country['local_name']?></h1>---------- Добавлено 31.12.2013 в 04:47 ----------Еще раз спасибо за помощь, все заработало.