Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Преобразование CSV-файла в MySQL-таблицы
 
 автор: Gandzas   (29.08.2006 в 23:02)   письмо автору
 
 

В продолжение темы
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=23110&page=8

Мне так никто и не ответил. :((

Есть файл csv с объявлениями. Мне эти данные нужно поместить в БД (MySQL)
Пишу, как могу. Запуталась, не пойму, где ошибка. HELP!!!


<?php
set_time_limit
(259200);
$filearr=file("/мой файл.csv");  

foreach(
$filearr as $line)
{

$elements=explode(";",$line);
if(
$elements[1]==23){ $todo="sell"$type="room" }
if(
$elements[1]==24){ $todo="sell"$type="flat" }
//здесь я указываю, в какой раздел размещать объявление
$name=" Не указано";
$phone$elements[3] . $elements[4] . $elements[5] . $elements[6];
$mail="";
$text=$elements[2];
$erste=substr($text,0,255);
$zweite=substr($text,255,255);
//заполняю необходимые поля
if(($elements[1]==24) || ($elements[1]==28) || ($elements[1]==34))
{
    
$match=array;
    
eregi("^[^,]+,",$text,$match);
    
$state=$match[1];
    unset(
$match);
}else{ 
$state="Киев";} 
//указываю, что писать в поле state с условием для некоторых разделов.
$chl=0;
$posr=1;
$blat=0;

$query=sprintf("INSERT INTO announcement(id,added,todo,type,name,phone,mail,erste,zweite,state,chl,posr,blat)
 VALUES(%d,%d,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')"
,
(
mysql_get_max_id("announcement",$link)+1),time(),$todo,$type,$name,$phone,$mail,$erste,$zweite,$state,$chl,$posr,$blat);
if(
mysql_query($query,$link)) echo("ок!<br>"); 
//сам запрос
}  


?>



Не работает.... Ничего не выдает. Просто чистая страница.

   
 
 автор: Dez   (29.08.2006 в 23:08)   письмо автору
 
   для: Gandzas   (29.08.2006 в 23:02)
 

Попробуйте так

mysql_query($query,$link) or die ('Ошибка<br>'.mysql_error());

   
 
 автор: Gandzas   (29.08.2006 в 23:13)   письмо автору
 
   для: Dez   (29.08.2006 в 23:08)
 

пустая страница.....

   
 
 автор: cheops   (29.08.2006 в 23:16)   письмо автору
 
   для: Gandzas   (29.08.2006 в 23:02)
 

<?php
$query
=sprintf("INSERT INTO announcement(id,added,todo,type,name,phone,mail,erste,zweite,state,chl,posr,blat) 
 VALUES(%d,%d,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')"

(
mysql_get_max_id("announcement",$link)+1),time(),$todo,$type,$name,$phone,$mail,$erste,$zweite,$state,$chl,$posr,$blat);
?>

Замысловато... выведите пожалуйста $query в окно браузера - что там? Нет ошибки?

   
 
 автор: Gandzas   (29.08.2006 в 23:22)   письмо автору
 
   для: cheops   (29.08.2006 в 23:16)
 

А можно для "особо одаренных" поподробнее?
Если написанный выше код и есть вывод в окно, то там тоже пусто...

   
 
 автор: Gandzas   (29.08.2006 в 23:23)   письмо автору
 
   для: Gandzas   (29.08.2006 в 23:22)
 

Сам запрос скопировала из формы добавления....

   
 
 автор: Dez   (29.08.2006 в 23:25)   письмо автору
 
   для: Gandzas   (29.08.2006 в 23:22)
 

А конект к базе есть?
p.s Что бы вывести $query, сделайте так
echo $query;

   
 
 автор: Gandzas   (29.08.2006 в 23:28)   письмо автору
 
   для: Dez   (29.08.2006 в 23:25)
 

С помощью формы добавляется все корректно. Неужели здесь ошибка?


require("globals.php");
$link=mysql_pconnect($sqlhost,$sqluser,$sqlpass);
mysql_select_db($dbname,$link);

   
 
 автор: Gandzas   (29.08.2006 в 23:29)   письмо автору
 
   для: Dez   (29.08.2006 в 23:25)
 

>А конект к базе есть?
>p.s Что бы вывести $query, сделайте так
>
echo $query;


Да, именно так и делала.... пусто

   
 
 автор: cheops   (30.08.2006 в 12:22)   письмо автору
 
   для: Gandzas   (29.08.2006 в 23:29)
 

Лучше заменить блок
<?php 
$query
=sprintf("INSERT INTO announcement(id,added,todo,type,name,phone,mail,erste,zweite,state,chl,posr,blat)  
 VALUES(%d,%d,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')"
,  
(
mysql_get_max_id("announcement",$link)+1),time(),$todo,$type,$name,$phone,$mail,$erste,$zweite,$state,$chl,$posr,$blat); 
?>

на
<?php
$query 
"INSERT INTO announcement(id,added,todo,type,name,phone,mail,erste,zweite,state,chl,posr,blat) 
          VALUES('"
.(mysql_get_max_id("announcement",$link)+1)."',
          '"
.time()."',
          '
$todo',
          '
$type',
          '
$name',
          '
$phone',
          '
$mail',
          '
$erste',
          '
$zweite',
          '
$state',
          '
$chl',
          '
$posr',
          '
$blat')";
?>

   
 
 автор: Gandzas   (30.08.2006 в 13:01)   письмо автору
 
   для: cheops   (30.08.2006 в 12:22)
 

>Лучше заменить блок
>
<?php 
>$query=sprintf("INSERT INTO announcement(id,added,todo,type,name,phone,mail,erste,zweite,state,chl,posr,blat)  
> VALUES(%d,%d,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')"
,  
>(
mysql_get_max_id("announcement",$link)+1),time(),$todo,$type,$name,$phone,$mail,$erste,$zweite,$state,$chl,$posr,$blat); 
>
?>

>на
>
<?php
>$query "INSERT INTO announcement(id,added,todo,type,name,phone,mail,erste,zweite,state,chl,posr,blat) 
>          VALUES('"
.(mysql_get_max_id("announcement",$link)+1)."',
>          '"
.time()."',
>          '
$todo',
>          '
$type',
>          '
$name',
>          '
$phone',
>          '
$mail',
>          '
$erste',
>          '
$zweite',
>          '
$state',
>          '
$chl',
>          '
$posr',
>          '
$blat')";
>
?>



Заменила. Та же история. Пустая страница - и все тут

   
 
 автор: Trianon   (30.08.2006 в 13:12)   письмо автору
 
   для: Gandzas   (30.08.2006 в 13:01)
 

>Заменила. Та же история. Пустая страница - и все тут

А, собственно, какого отклика Вы ожидаете? У Вас ни одного оператора вывода не стоит.

   
 
 автор: Gandzas   (30.08.2006 в 13:19)   письмо автору
 
   для: Trianon   (30.08.2006 в 13:12)
 

Где не стоит????

if(mysql_query($query,$link)) echo("ок!<br>");  


Или я чего-то не понимаю????

   
 
 автор: Trianon   (30.08.2006 в 14:04)   письмо автору
 
   для: Gandzas   (30.08.2006 в 13:19)
 

Пардон, не заметил.
Ну так и продолжили бы:

if(mysql_query($query,$link)) echo("ок!<br>"); else echo "Error in $query <br>".mysql_error();   

   
 
 автор: Gandzas   (30.08.2006 в 14:09)   письмо автору
 
   для: Trianon   (30.08.2006 в 14:04)
 

>Пардон, не заметил.
>Ну так и продолжили бы:
>

>if(mysql_query($query,$link)) echo("ок!<br>"); else echo "Error in $query <br>".mysql_error();   
>


Продолжила.... Пустая страница....

   
 
 автор: Trianon   (30.08.2006 в 14:58)   письмо автору
 
   для: Gandzas   (30.08.2006 в 14:09)
 

А в $filearr есть что-нибудь?
Поставьте
print_r($filearr);
перед foreach(....

   
 
 автор: Gandzas   (30.08.2006 в 15:03)   письмо автору
 
   для: Trianon   (30.08.2006 в 14:58)
 

Не поверите.... ПУСТО!

   
 
 автор: Trianon   (30.08.2006 в 15:10)   письмо автору
 
   для: Gandzas   (30.08.2006 в 15:03)
 

почему не поверю? Поверю.
Я скорее не поверю (30.08.2006 в 12:06)

   
 
 автор: Gandzas   (30.08.2006 в 15:44)   письмо автору
 
   для: Trianon   (30.08.2006 в 15:10)
 

файл с кодом лежит в директории "abc". Там же лежит и файл file.csv
Допустим, что относительная ссылка указана неверно.
Указываю абсолютную:
$filearr=file("http://my.site/abc/file.csv");
При наборе этой ссылки в IE - вижу файл! (предлагает открыть или сохранить).
Пыталась также разобрать txt файл - аналогично...

Кроме этого:


...
$filearr=file("http://my.site/abc/file.csv");    

if (!is_file("http://my.site/abc/file.csv")) echo 'такого файла нет'; 

print_r($filearr); 
...


И пусто... Синтаксис неверный где-то в коде? Скобка/кавычка? Коннект к базе? Что?

   
 
 автор: Trianon   (30.08.2006 в 16:15)   письмо автору
 
   для: Gandzas   (30.08.2006 в 15:44)
 

$filearr=file("file.csv");

   
 
 автор: Gandzas   (30.08.2006 в 16:23)   письмо автору
 
   для: Trianon   (30.08.2006 в 16:15)
 

>$filearr=file("file.csv");

Не работает

   
 
 автор: Trianon   (30.08.2006 в 16:25)   письмо автору
 
   для: Gandzas   (30.08.2006 в 16:23)
 

$filearr=file("file.csv"); работает. Если файл лежит там же где и скрипт.


Путь от корня сервера состоит из того, что лежит в $_SERVER['DOCUMENT_ROOT']
и начала $_SERVER['PHP_SELF']

   
 
 автор: Gandzas   (30.08.2006 в 16:35)   письмо автору
 
   для: Trianon   (30.08.2006 в 16:25)
 

Вы о каких корнях??? :)))

Рассказываю.
Скрипт лежит там же, где и файл. Как бы я не прописывала путь к файлу (относительный ли, абсолютный ли) - при запросе:


<?php  
require("globals.php");
$link=mysql_pconnect($sqlhost,$sqluser,$sqlpass);
mysql_select_db($dbname,$link);

set_time_limit(259200); 
$filearr=file("file.csv");    

if (!
is_file("file.csv")) echo 'такого файла нет'

print_r($filearr); 
?>



НИЧЕГО НЕ ОТОБРАЖАЕТСЯ!!!

Если файл со скриптом перемещаю в корень (этого домена, т.е. http://my.site/script.php), а сам файл оставляю на месте - то отображается содержимое файла, как бы я не прописывала к нему путь - хоть "abc/file.csv ", хоть "http://my.site/abc/file.csv"

   
 
 автор: Trianon   (30.08.2006 в 16:48)   письмо автору
 
   для: Gandzas   (30.08.2006 в 16:35)
 

выведите, пожалуйста, в этом скрипте две переменных:
echo  "DOCUMENT_ROOT=". $_SERVER['DOCUMENT_ROOT'] . ' <br>';
echo  "PHP_SELF=". $_SERVER['PHP_SELF']. ' <br>';

   
 
 автор: Gandzas   (30.08.2006 в 16:57)   письмо автору
 
   для: Trianon   (30.08.2006 в 16:48)
 

Пусто... :((

   
 
 автор: Trianon   (30.08.2006 в 17:07)   письмо автору
 
   для: Gandzas   (30.08.2006 в 16:57)
 

Вы говорили, что echo у Вас работает.
Я надеюсь, Вы эти строки не внутрь foreach(){.....} поместили?

   
 
 автор: Gandzas   (30.08.2006 в 17:21)   письмо автору
 
   для: Trianon   (30.08.2006 в 17:07)
 

В массив? Хм... Это даже мне в голову не пришло бы... А что, надо?


<?php 
  
echo "Hello"
?> 


Работает...

<?php 
echo  "DOCUMENT_ROOT="$_SERVER['DOCUMENT_ROOT'] . ' <br>'
echo  
"PHP_SELF=" $_SERVER['PHP_SELF']. ' <br>'
?> 

Не работает...

   
 
 автор: Trianon   (30.08.2006 в 17:26)   письмо автору
 
   для: Gandzas   (30.08.2006 в 17:21)
 

во второй строке точки не хватает . Перед $_SERVER.

   
 
 автор: Gandzas   (30.08.2006 в 17:44)   письмо автору
 
   для: Trianon   (30.08.2006 в 17:26)
 

А вот с точками, кавычками и скобками у меня пожизненная проблема :)

Ответ:

DOCUMENT_ROOT=/home/my login/my domen
PHP_SELF=/my script.php

   
 
 автор: Trianon   (30.08.2006 в 17:57)   письмо автору
 
   для: Gandzas   (30.08.2006 в 17:44)
 

как-то это слабо согласуется с тем, что скрипт и файл лежит в каталоге abc.
да и пробелов в именах каталогов у хостера обычно не бывает.
Но если и вправду так, то абсолютный путь до Вашего файла будет таким:

'/home/yourlogin/yourdomain/file.csv'

   
 
 автор: Gandzas   (30.08.2006 в 18:36)   письмо автору
 
   для: Trianon   (30.08.2006 в 17:57)
 

скрипт из каталога abc не работает вовсе. Сейчас он лежит в каталоге mydomen/files.csv
my login и my domen заменила я. В оригинале соответственно мой логин и мой домен.
Проблема же не в пути к файлу. Из этого каталога файл читается, а вот сам скрипт не работает.

   
 
 автор: Gandzas   (30.08.2006 в 18:40)   письмо автору
 
   для: Gandzas   (30.08.2006 в 18:36)
 

Сорьки mydomen/script.php

   
 
 автор: Trianon   (30.08.2006 в 18:58)   письмо автору
 
   для: Gandzas   (30.08.2006 в 18:40)
 

давайте так сделаем.
Когда у Вас строки

$filearr = file('имя файла');
echo '<pre>'; print_r($filearr);echo '</pre>';

покажут нечто напоминающее нужный Вам файл,
тогда и вернемся к неработающему скрипту.

А до этих пор будем считать , что файл у Вас не читается.

PS
Надеюсь, Вы экспериментируете с небольшим файлом?
Если он порядка нескольких мегабайт, он может просто не поместиться в массив.

   
 
 автор: Gandzas   (30.08.2006 в 19:08)   письмо автору
 
   для: Trianon   (30.08.2006 в 18:58)
 

Я экспериментирую с файлом из 20 строк. Из каталога mydomen/script.php - он читается.
Или


автор: Gandzas (30.08.2006 в 16:21) письмо автору


<?php
require("globals.php");
$link=mysql_pconnect($sqlhost,$sqluser,$sqlpass);
mysql_select_db($dbname,$link);

set_time_limit(259200);
$filearr=file("abc/file.csv");

if (!is_file("abc/file.csv")) echo 'такого файла нет';

print_r($filearr);


?>



Файл с этим кодом забросила в корень.

На странице:
Array ( [0] => ...содержимое файла....)

Но сам скрипт по прежнему не работает

это не читается?

   
 
 автор: Gandzas   (30.08.2006 в 19:16)   письмо автору
 
   для: Gandzas   (30.08.2006 в 19:08)
 

С запросом

$filearr = file('имя файла'); 
echo '<pre>'; print_r($filearr);echo '</pre>'; 


Каждая новая строчка файла выводится в окне с новой строки

Array
(
[0] => .....
[1] => ....
и т.д.
[19] => ....
)

Так что файл читается. как минимум, из этого каталога

   
 
 автор: Gandzas   (30.08.2006 в 16:50)   письмо автору
 
   для: Trianon   (30.08.2006 в 16:25)
 

C удовольствием послушаю лекцию по поводу корней, как только решу текущую проблему. :)
Я уже написала, что я называю корнем. Делайте скидку, плиз, я же все-таки барышня ;)))

   
 
 автор: Gandzas   (30.08.2006 в 16:21)   письмо автору
 
   для: Gandzas   (30.08.2006 в 15:44)
 



<?php  
require("globals.php");
$link=mysql_pconnect($sqlhost,$sqluser,$sqlpass);
mysql_select_db($dbname,$link);

set_time_limit(259200);  
$filearr=file("abc/file.csv");    

if (!
is_file("abc/file.csv")) echo 'такого файла нет'

print_r($filearr); 


?>


Файл с этим кодом забросила в корень.

На странице:
Array ( [0] => ...содержимое файла....)

Но сам скрипт по прежнему не работает

   
 
 автор: cheops   (30.08.2006 в 16:21)   письмо автору
 
   для: Gandzas   (30.08.2006 в 15:03)
 

>Не поверите.... ПУСТО!
А если в начале скрипта написать
<?php
  
echo "Hello";
?>

тоже пусто? Другие скрипты с использованием PHP работают?

PS Дело происходит на локальной машине или на хостинге?

   
 
 автор: Gandzas   (30.08.2006 в 16:25)   письмо автору
 
   для: cheops   (30.08.2006 в 16:21)
 

>>Не поверите.... ПУСТО!
>А если в начале скрипта написать
>
<?php
>  echo "Hello";
>
?>

>тоже пусто? Другие скрипты с использованием PHP работают?
>
>PS Дело происходит на локальной машине или на хостинге?

На хостинге. Работают. Hello отображается. База тоже работает (поиск объявлений и добавление объявлений с помощью формы на сайте работают корректно.)

   
 
 автор: Gandzas   (29.08.2006 в 23:42)   письмо автору
 
   для: cheops   (29.08.2006 в 23:16)
 

Вряд ли в запросе ошибка. Еще раз проверила, в форме добавления объявления с сайта этот запрос работает корректно... Сюда я его просто скопировала и заполнила необходимые поля...

   
 
 автор: Gandzas   (30.08.2006 в 00:40)   письмо автору
 
   для: Gandzas   (29.08.2006 в 23:42)
 

Ну вот... :((( Все ушли спать...

   
 
 автор: kolobokk   (30.08.2006 в 09:27)   письмо автору
 
   для: Gandzas   (29.08.2006 в 23:02)
 

а каким образом вы в этот скрипт передаете файл "/мой файл.csv" ?
Вы уверены что он там есть?

проверьте сначала наличие файла

<?php 
set_time_limit
(259200); 
$filearr=file("/мой файл.csv");   

if (!
is_file("/мой файл.csv")) echo 'такого файла нет';

foreach(
$filearr as $line

................
...............

   
 
 автор: Gandzas   (30.08.2006 в 12:06)   письмо автору
 
   для: kolobokk   (30.08.2006 в 09:27)
 

Уверена. Файл есть...

   
 
 автор: Gandzas   (30.08.2006 в 12:58)   письмо автору
 
   для: Gandzas   (30.08.2006 в 12:06)
 

Я начинаю подозревать, что проблема таки в коннекте к базе.
Может, я чего-то для коннекта не дописываю?

require("globals.php");
$link=mysql_pconnect($sqlhost,$sqluser,$sqlpass);
mysql_select_db($dbname,$link);


На любой запрос к базе - чистая страница...

   
 
 автор: cheops   (30.08.2006 в 16:22)   письмо автору
 
   для: Gandzas   (30.08.2006 в 12:58)
 

А если в начале скрипта написать
<?php 
  
echo "Hello"
?>

тоже пусто?

   
 
 автор: Gandzas   (30.08.2006 в 16:38)   письмо автору
 
   для: cheops   (30.08.2006 в 16:22)
 

Еще один скрипт проверила с запросом к базе, все работает, кроме этого....

   
 
 автор: Gandzas   (30.08.2006 в 16:44)   письмо автору
 
   для: cheops   (30.08.2006 в 16:22)
 

>А если в начале скрипта написать
>
<?php 
>  echo "Hello"
>
?>

>тоже пусто?


Нет, все работает....
Hello

   
 
 автор: Gandzas   (30.08.2006 в 16:46)   письмо автору
 
   для: cheops   (30.08.2006 в 16:22)
 

Только что набросала запрос на выдачу значений одного параметра из базы.
Все работает

   
 
 автор: d-111   (30.08.2006 в 18:10)   письмо автору
 
   для: Gandzas   (30.08.2006 в 16:46)
 


<?
require("globals.php"); 
$link=mysql_pconnect($sqlhost,$sqluser,$sqlpass); 
mysql_select_db($dbname,$link); 
?>


Файл globals.php находится в одной папке с скриптом?
Выведите переменные:

<?
echo $sqlhost."<br>".$sqluser."<br>".$sqlpass."<br>".$dbname."<br>".$link;
?>

Верны ли все параметры?

   
 
 автор: Gandzas   (30.08.2006 в 18:59)   письмо автору
 
   для: d-111   (30.08.2006 в 18:10)
 

Да, все параметры верны

   
 
 автор: Trianon   (30.08.2006 в 19:02)   письмо автору
 
   для: Gandzas   (30.08.2006 в 18:59)
 

Между прочим.
Никогда не пишите mysql_pconnect вместо mysql_connect. Как минимум до тех пор, пока не будете четко представлять себе разницу.

   
 
 автор: Gandzas   (30.08.2006 в 19:23)   письмо автору
 
   для: Trianon   (30.08.2006 в 19:02)
 

Спасибо за совет, но я стараюсь вообще не заморачиваться по этому поводу.
80% сайта написано мной лично не зная правил, синтаксиса и четкой разницы.
Разбираюсь по мере сил. Эта часть скопирована мною из рабочей части доски объявлений, писанной не мною, на эту же доску (в эту же базу) и заливается инфа из файла csv.
Так уж сложилось по жизни, что мне приходится этим заниматься. А по специальности я вообще юрист (практикующий) и к программерам и кодерам не имею никакого отношения, впрочем, как и к веб-дизайну. Но есть слово НАДО. К тому же, интересно :))))

   
 
 автор: Trianon   (30.08.2006 в 19:26)   письмо автору
 
   для: Gandzas   (30.08.2006 в 19:23)
 

как у Вас сейчас скрипт выглядит?

   
 
 автор: Gandzas   (30.08.2006 в 19:35)   письмо автору
 
   для: Trianon   (30.08.2006 в 19:26)
 


<?php
require("globals.php");
$link=mysql_pconnect($sqlhost,$sqluser,$sqlpass);
mysql_select_db($dbname,$link);

set_time_limit(259200);
$filearr=file('abc/file.csv');  

if (!
is_file('abc/file.csv')) echo 'такого файла нет'

print_r($filearr); 


foreach(
$filearr as $line)
{

$elements=explode(";",$line);
if(
$elements[1]==23){ $todo="sell"$type="room" }
if(
$elements[1]==24){ $todo="sell"$type="flat" }
if(
$elements[1]==27){ $todo="sdam"$type="room" }
if(
$elements[1]==28){ $todo="sdam"$type="flat" }
if(
$elements[1]==30){ $todo="other"$type="flat" }
if(
$elements[1]==31){ $todo="other"$type="flat" }
if(
$elements[1]==32){ $todo="other"$type="flat" }
if(
$elements[1]==33){ $todo="other"$type="flat" }
if(
$elements[1]==34){ $todo="other"$type="flat" }
if(
$elements[1]==109){ $todo="buy"$type="flat" }
if(
$elements[1]==111){ $todo="sdam"$type="flat" }
if(
$elements[1]==116){ $todo="sell"$type="flat" }
if(
$elements[1]==119){ $todo="snim"$type="flat" }
if(
$elements[1]==131){ $todo="sell"$type="flat" }
if(
$elements[1]==146){ $todo="sell"$type="flat" }
if(
$elements[1]==161){ $todo="sell"$type="flat" }
if(
$elements[1]==176){ $todo="sell"$type="flat" }
if(
$elements[1]==177){ $todo="buy"$type="flat" }
if(
$elements[1]==178){ $todo="buy"$type="flat" }
if(
$elements[1]==179){ $todo="buy"$type="flat" }
if(
$elements[1]==180){ $todo="buy"$type="flat" }
if(
$elements[1]==181){ $todo="buy"$type="flat" }
if(
$elements[1]==182){ $todo="buy"$type="flat" }
if(
$elements[1]==183){ $todo="sdam"$type="flat" }
if(
$elements[1]==184){ $todo="sdam"$type="flat" }
if(
$elements[1]==185){ $todo="sdam"$type="flat" }
if(
$elements[1]==186){ $todo="sdam"$type="flat" }
if(
$elements[1]==187){ $todo="sdam"$type="flat" }
if(
$elements[1]==188){ $todo="snim"$type="flat" }
if(
$elements[1]==189){ $todo="snim"$type="flat" }
if(
$elements[1]==190){ $todo="snim"$type="flat" }
if(
$elements[1]==191){ $todo="snim"$type="flat" }
if(
$elements[1]==473){ $todo="buy"$type="flat" }
if(
$elements[1]==474){ $todo="snim"$type="flat" }
if(
$elements[1]==2225){ $todo="sell"$type="flat" }
if(
$elements[1]==2226){ $todo="sell"$type="flat" }
if(
$elements[1]==2227){ $todo="sell"$type="flat" }
if(
$elements[1]==2228){ $todo="sell"$type="flat" }
if(
$elements[1]==2229){ $todo="sell"$type="flat" }
if(
$elements[1]==2231){ $todo="sell"$type="flat" }
if(
$elements[1]==2232){ $todo="sell"$type="flat" }
if(
$elements[1]==2233){ $todo="sell"$type="flat" }
if(
$elements[1]==2234){ $todo="sell"$type="flat" }
if(
$elements[1]==2235){ $todo="sell"$type="flat" }
if(
$elements[1]==2237){ $todo="sell"$type="flat" }
if(
$elements[1]==2238){ $todo="sell"$type="flat" }
if(
$elements[1]==2239){ $todo="sell"$type="flat" }
if(
$elements[1]==2240){ $todo="sell"$type="flat" }
if(
$elements[1]==2241){ $todo="sell"$type="flat" }
if(
$elements[1]==2243){ $todo="sell"$type="flat" }
if(
$elements[1]==2244){ $todo="sell"$type="flat" }
if(
$elements[1]==2245){ $todo="sell"$type="flat" }
if(
$elements[1]==2246){ $todo="sell"$type="flat" }
if(
$elements[1]==2247){ $todo="sell"$type="flat" }
if(
$elements[1]==2249){ $todo="sell"$type="flat" }
if(
$elements[1]==2250){ $todo="sell"$type="flat" }
if(
$elements[1]==2251){ $todo="sell"$type="flat" }
if(
$elements[1]==2252){ $todo="sell"$type="flat" }
if(
$elements[1]==2253){ $todo="sell"$type="flat" }
if(
$elements[1]==2255){ $todo="sell"$type="flat" }
if(
$elements[1]==2256){ $todo="sell"$type="flat" }
if(
$elements[1]==2257){ $todo="sell"$type="flat" }
if(
$elements[1]==2258){ $todo="sell"$type="flat" }
if(
$elements[1]==2259){ $todo="sell"$type="flat" }
if(
$elements[1]==2261){ $todo="sell"$type="flat" }
if(
$elements[1]==2262){ $todo="sell"$type="flat" }
if(
$elements[1]==2263){ $todo="sell"$type="flat" }
if(
$elements[1]==2264){ $todo="sell"$type="flat" }
if(
$elements[1]==2265){ $todo="sell"$type="flat" }
if(
$elements[1]==2267){ $todo="sell"$type="flat" }
if(
$elements[1]==2269){ $todo="sell"$type="flat" }
if(
$elements[1]==2270){ $todo="sell"$type="flat" }
if(
$elements[1]==2271){ $todo="sell"$type="flat" }
if(
$elements[1]==2272){ $todo="sell"$type="flat" }
if(
$elements[1]==2274){ $todo="sell"$type="flat" }
if(
$elements[1]==2275){ $todo="sell"$type="flat" }
if(
$elements[1]==2276){ $todo="sell"$type="flat" }
if(
$elements[1]==2277){ $todo="sell"$type="flat" }
if(
$elements[1]==2278){ $todo="sell"$type="flat" }
if(
$elements[1]==2280){ $todo="sell"$type="flat" }
if(
$elements[1]==2281){ $todo="sell"$type="flat" }
if(
$elements[1]==2282){ $todo="sell"$type="flat" }
if(
$elements[1]==2283){ $todo="sell"$type="flat" }
if(
$elements[1]==2284){ $todo="sell"$type="flat" }
if(
$elements[1]==4477){ $todo="sell"$type="shop" }
if(
$elements[1]==4478){ $todo="sell"$type="warehouse" }
if(
$elements[1]==4479){ $todo="sell"$type="food" }
if(
$elements[1]==4480){ $todo="sdam"$type="ofice" }
if(
$elements[1]==4481){ $todo="sdam"$type="other" }
if(
$elements[1]==4482){ $todo="sdam"$type="food" }
if(
$elements[1]==4483){ $todo="buy"$type="other" }
if(
$elements[1]==4484){ $todo="sell"$type="ofice" }
if(
$elements[1]==4485){ $todo="sell"$type="other" }
if(
$elements[1]==4486){ $todo="sell"$type="food" }
if(
$elements[1]==4487){ $todo="sell"$type="other" }
if(
$elements[1]==4488){ $todo="sdam"$type="shop" }
if(
$elements[1]==4489){ $todo="sdam"$type="warehouse" }
if(
$elements[1]==4490){ $todo="sdam"$type="other" }
if(
$elements[1]==4491){ $todo="sdam"$type="food" }

$name=" Не указано";
$phone$elements[3] . $elements[4] . $elements[5] . $elements[6];
$mail="";
$text=$elements[2];
$erste=substr($text,0,255);
$zweite=substr($text,255,255);
if((
$elements[1]==24) || ($elements[1]==28) || ($elements[1]==34))
{
    
$match=array;
    
eregi("^[^,]+,",$text,$match);
    
$state=$match[1];
    unset(
$match);
}else{ 
$state="Киев";} 
$chl=0;
$posr=1;
$blat=0;

$query=sprintf("INSERT INTO announcement(id,
added,
todo,
type,
name,
phone,
mail,
erste,
zweite,
state,
chl,
posr,
blat)
 VALUES(%d,%d,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')"
,
(
mysql_get_max_id("announcement",$link)+1),
time(),
$todo,
$type,
$name,
$phone,
$mail,
$erste,
$zweite,
$state,
$chl,
$posr,
$blat);
if(
mysql_query($query,$link)) echo("ок!<br>");  


}  


?>



Это абсолютная информация из файла sript.php

   
 
 автор: Trianon   (30.08.2006 в 19:42)   письмо автору
 
   для: Gandzas   (30.08.2006 в 19:35)
 

Я закрою глаза на то, что сверху.
Но внизу у Вас опять стоит
if(mysql_query($query,$link)) echo("ок!<br>");
а не
if(mysql_query($query,$link)) echo("ок!<br>"); else echo "Error in $query <br>".mysql_error();
Вы сами себя лишаете информации о том, почему у Вас что-то не идет...

   
 
 автор: Gandzas   (30.08.2006 в 19:46)   письмо автору
 
   для: Trianon   (30.08.2006 в 19:42)
 

Да не вопрос. Добавила. Пусто.

   
 
 автор: Gandzas   (30.08.2006 в 19:51)   письмо автору
 
   для: Gandzas   (30.08.2006 в 19:46)
 

Поменяла запрос, как рекомендовал cheops

foreach($filearr as $line)
{

$elements=explode(";",$line);
if($elements[1]==23){ $todo="sell"; $type="room" }
if($elements[1]==24){ $todo="sell"; $type="flat" }
if($elements[1]==27){ $todo="sdam"; $type="room" }
if($elements[1]==28){ $todo="sdam"; $type="flat" }
if($elements[1]==30){ $todo="other"; $type="flat" }
if($elements[1]==31){ $todo="other"; $type="flat" }
if($elements[1]==32){ $todo="other"; $type="flat" }
if($elements[1]==33){ $todo="other"; $type="flat" }
if($elements[1]==34){ $todo="other"; $type="flat" }
if($elements[1]==109){ $todo="buy"; $type="flat" }
if($elements[1]==111){ $todo="sdam"; $type="flat" }
if($elements[1]==116){ $todo="sell"; $type="flat" }
if($elements[1]==119){ $todo="snim"; $type="flat" }
if($elements[1]==131){ $todo="sell"; $type="flat" }
if($elements[1]==146){ $todo="sell"; $type="flat" }
if($elements[1]==161){ $todo="sell"; $type="flat" }
if($elements[1]==176){ $todo="sell"; $type="flat" }
if($elements[1]==177){ $todo="buy"; $type="flat" }
if($elements[1]==178){ $todo="buy"; $type="flat" }
if($elements[1]==179){ $todo="buy"; $type="flat" }
if($elements[1]==180){ $todo="buy"; $type="flat" }
if($elements[1]==181){ $todo="buy"; $type="flat" }
if($elements[1]==182){ $todo="buy"; $type="flat" }
if($elements[1]==183){ $todo="sdam"; $type="flat" }
if($elements[1]==184){ $todo="sdam"; $type="flat" }
if($elements[1]==185){ $todo="sdam"; $type="flat" }
if($elements[1]==186){ $todo="sdam"; $type="flat" }
if($elements[1]==187){ $todo="sdam"; $type="flat" }
if($elements[1]==188){ $todo="snim"; $type="flat" }
if($elements[1]==189){ $todo="snim"; $type="flat" }
if($elements[1]==190){ $todo="snim"; $type="flat" }
if($elements[1]==191){ $todo="snim"; $type="flat" }
if($elements[1]==473){ $todo="buy"; $type="flat" }
if($elements[1]==474){ $todo="snim"; $type="flat" }
if($elements[1]==2225){ $todo="sell"; $type="flat" }
if($elements[1]==2226){ $todo="sell"; $type="flat" }
if($elements[1]==2227){ $todo="sell"; $type="flat" }
if($elements[1]==2228){ $todo="sell"; $type="flat" }
if($elements[1]==2229){ $todo="sell"; $type="flat" }
if($elements[1]==2231){ $todo="sell"; $type="flat" }
if($elements[1]==2232){ $todo="sell"; $type="flat" }
if($elements[1]==2233){ $todo="sell"; $type="flat" }
if($elements[1]==2234){ $todo="sell"; $type="flat" }
if($elements[1]==2235){ $todo="sell"; $type="flat" }
if($elements[1]==2237){ $todo="sell"; $type="flat" }
if($elements[1]==2238){ $todo="sell"; $type="flat" }
if($elements[1]==2239){ $todo="sell"; $type="flat" }
if($elements[1]==2240){ $todo="sell"; $type="flat" }
if($elements[1]==2241){ $todo="sell"; $type="flat" }
if($elements[1]==2243){ $todo="sell"; $type="flat" }
if($elements[1]==2244){ $todo="sell"; $type="flat" }
if($elements[1]==2245){ $todo="sell"; $type="flat" }
if($elements[1]==2246){ $todo="sell"; $type="flat" }
if($elements[1]==2247){ $todo="sell"; $type="flat" }
if($elements[1]==2249){ $todo="sell"; $type="flat" }
if($elements[1]==2250){ $todo="sell"; $type="flat" }
if($elements[1]==2251){ $todo="sell"; $type="flat" }
if($elements[1]==2252){ $todo="sell"; $type="flat" }
if($elements[1]==2253){ $todo="sell"; $type="flat" }
if($elements[1]==2255){ $todo="sell"; $type="flat" }
if($elements[1]==2256){ $todo="sell"; $type="flat" }
if($elements[1]==2257){ $todo="sell"; $type="flat" }
if($elements[1]==2258){ $todo="sell"; $type="flat" }
if($elements[1]==2259){ $todo="sell"; $type="flat" }
if($elements[1]==2261){ $todo="sell"; $type="flat" }
if($elements[1]==2262){ $todo="sell"; $type="flat" }
if($elements[1]==2263){ $todo="sell"; $type="flat" }
if($elements[1]==2264){ $todo="sell"; $type="flat" }
if($elements[1]==2265){ $todo="sell"; $type="flat" }
if($elements[1]==2267){ $todo="sell"; $type="flat" }
if($elements[1]==2269){ $todo="sell"; $type="flat" }
if($elements[1]==2270){ $todo="sell"; $type="flat" }
if($elements[1]==2271){ $todo="sell"; $type="flat" }
if($elements[1]==2272){ $todo="sell"; $type="flat" }
if($elements[1]==2274){ $todo="sell"; $type="flat" }
if($elements[1]==2275){ $todo="sell"; $type="flat" }
if($elements[1]==2276){ $todo="sell"; $type="flat" }
if($elements[1]==2277){ $todo="sell"; $type="flat" }
if($elements[1]==2278){ $todo="sell"; $type="flat" }
if($elements[1]==2280){ $todo="sell"; $type="flat" }
if($elements[1]==2281){ $todo="sell"; $type="flat" }
if($elements[1]==2282){ $todo="sell"; $type="flat" }
if($elements[1]==2283){ $todo="sell"; $type="flat" }
if($elements[1]==2284){ $todo="sell"; $type="flat" }
if($elements[1]==4477){ $todo="sell"; $type="shop" }
if($elements[1]==4478){ $todo="sell"; $type="warehouse" }
if($elements[1]==4479){ $todo="sell"; $type="food" }
if($elements[1]==4480){ $todo="sdam"; $type="ofice" }
if($elements[1]==4481){ $todo="sdam"; $type="other" }
if($elements[1]==4482){ $todo="sdam"; $type="food" }
if($elements[1]==4483){ $todo="buy"; $type="other" }
if($elements[1]==4484){ $todo="sell"; $type="ofice" }
if($elements[1]==4485){ $todo="sell"; $type="other" }
if($elements[1]==4486){ $todo="sell"; $type="food" }
if($elements[1]==4487){ $todo="sell"; $type="other" }
if($elements[1]==4488){ $todo="sdam"; $type="shop" }
if($elements[1]==4489){ $todo="sdam"; $type="warehouse" }
if($elements[1]==4490){ $todo="sdam"; $type="other" }
if($elements[1]==4491){ $todo="sdam"; $type="food" }

$name=" Не указано";
$phone= $elements[3] . $elements[4] . $elements[5] . $elements[6];
$mail="";
$text=$elements[2];
$erste=substr($text,0,255);
$zweite=substr($text,255,255);
if(($elements[1]==24) || ($elements[1]==28) || ($elements[1]==34))
{
    $match=array;
    eregi("^[^,]+,",$text,$match);
    $state=$match[1];
    unset($match);
}else{ $state="Киев";} 
$chl=0;
$posr=1;
$blat=0;

$query = "INSERT INTO announcement(id,added,todo,type,name,phone,mail,erste,zweite,state,chl,posr,blat)  
          VALUES('".(mysql_get_max_id("announcement",$link)+1)."', 
          '".time()."', 
          '$todo', 
          '$type', 
          '$name', 
          '$phone', 
          '$mail', 
          '$erste', 
          '$zweite', 
          '$state', 
          '$chl', 
          '$posr', 
          '$blat')"; 

if(mysql_query($query,$link)) echo("ок!<br>"); else echo "Error in $query <br>".mysql_error(); 

}  


Где-то здесь и есть ошибка.

   
 
 автор: Trianon   (30.08.2006 в 19:51)   письмо автору
 
   для: Gandzas   (30.08.2006 в 19:46)
 

Не может такого быть.
У Вас похоже, где-то в одном из подключаемых файлов (или в конфигурации php) стоит запрет на вывод ошибок и предупреждений...

   
 
 автор: Gandzas   (30.08.2006 в 19:55)   письмо автору
 
   для: Trianon   (30.08.2006 в 19:51)
 

Вполне возможно, хотя, если я пишу неправильный путь к файлу csv:


$filearr=file('/abc/file.csv');  

if (!is_file('/abc/file.csv')) echo 'такого файла нет'; 
print_r($filearr); 


То: такого файла нет. Получается, что ошибки выводятся? Или я заблуждаюсь?

Если:


$filearr=file('../abc/file.csv');  

if (!is_file('../abc/file.csv')) echo 'такого файла нет'; 
print_r($filearr); 


То все нормально отображается.

Как только добавляю массив - пусто.

   
 
 автор: Gandzas   (30.08.2006 в 19:58)   письмо автору
 
   для: Gandzas   (30.08.2006 в 19:55)
 

У меня такое уже было однажды.... Скобки не хватало }
И никаких сообщений не выводилось. Просто пустая страница. Здесь, похоже, то же самое...

   
 
 автор: Gandzas   (30.08.2006 в 20:01)   письмо автору
 
   для: Gandzas   (30.08.2006 в 19:58)
 

За что отвечает эта строчка?

mysql_select_db($dbname,$link);

И, в частности, параметр $link

   
 
 автор: Gandzas   (30.08.2006 в 20:18)   письмо автору
 
   для: Gandzas   (30.08.2006 в 20:01)
 

Если в скрипте ошибки нет, то ошибка в подключении к базе.
Где??? Как узнать? Светлые головы, расскажите, плиз..

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования