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

Форум PHP

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

 

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

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

тема: Таблицу в csv файл
 
 автор: Maxys   (31.01.2008 в 12:31)   письмо автору
 
 

Здраствуйте нужна очень ваша помощь у меня есть csv файл откуда берутся цены товаров. С помощью for я перебираю строки с ценами в csv файле и добавляю каждой цене +10%.. это у меня получается успешно. Но у меня такой вопрос, как я могу это выводить не на экран, а изменять данный прямо в этом csv файле?

Тоесть закинул файл на ftp
Запустил скрипт который добавляет каждой цене +10%
Сохранить готовые цены (тоесть уже с +10%) в этот же файл (или лучше новый csv файл создавать?)
и готовый файл скачал с ftp

Такое вообще возможно?

   
 
 автор: mihdan   (31.01.2008 в 13:02)   письмо автору
 
   для: Maxys   (31.01.2008 в 12:31)
 

Либо по http, либо по ftp

   
 
 автор: Maxys   (31.01.2008 в 13:05)   письмо автору
 
   для: mihdan   (31.01.2008 в 13:02)
 

а точнее можно? я даже не понимаю КАК это сделать?

   
 
 автор: mihdan   (31.01.2008 в 13:22)   письмо автору
 
   для: Maxys   (31.01.2008 в 13:05)
 

1. Создайте скрипт, который увеличивает, то что вам нужно на определенное число, переданное в парметрах
2. Положите на сервер скрипт по фтп
3. Вызывайте скрипт по http (через браузер) с параметром например


http://host.ru/script.php?incremet=10


4. В срипте получаете параметр


<?
$increment 
$_GET['increment'];
// Тут ваш код, который увеличивает показатели на increment
?>

   
 
 автор: Maxys   (31.01.2008 в 13:39)   письмо автору
1.6 Кб
 
   для: mihdan   (31.01.2008 в 13:22)
 

ну вот файл который находит csv "getfile.csv" и начинает переделывать его (то что я умножаю на 0.10 это 10% не знаю работает ещё или нет, не проверил, но не проблема исправить)
должен считать всё правильно и выдавать это в таблице что я написал... но мне надо что бы цены+10% выводились не в html таблице. А сохранялись уже переделанные прямо в csv файл.

   
 
 автор: mihdan   (31.01.2008 в 13:45)   письмо автору
 
   для: Maxys   (31.01.2008 в 13:39)
 

Так возьмите и сделайте это!

   
 
 автор: Maxys   (31.01.2008 в 13:54)   письмо автору
 
   для: mihdan   (31.01.2008 в 13:45)
 

что зделать? я же пишу что НЕ ЗНАЮ КАК!
Я знаю как вынуть данные из файла, как их обработать, но как их обратно запихнуть в csv??????

   
 
 автор: mihdan   (31.01.2008 в 14:02)   письмо автору
 
   для: Maxys   (31.01.2008 в 13:54)
 

fopen(), fputs(), fclose()

   
 
 автор: Maxys   (31.01.2008 в 14:11)   письмо автору
 
   для: mihdan   (31.01.2008 в 14:02)
 

спасибо, сейчас попробую.

   
 
 автор: Maxys   (31.01.2008 в 14:57)   письмо автору
 
   для: mihdan   (31.01.2008 в 14:02)
 

а как вписывать в ячейку значение?

elseif ($f == 9) 
                            {
                                $cena = $data_array[$f];
                                $cena += 10;
                                fputs($file, $cena);
                            }

так не получается..

   
 
 автор: Maxys   (31.01.2008 в 16:24)   письмо автору
 
   для: Maxys   (31.01.2008 в 12:31)
 

Так кто нибудь может помочь? Сказать как мне как в ячейку вставить свой текст?

   
 
 автор: mihdan   (01.02.2008 в 10:36)   письмо автору
 
   для: Maxys   (31.01.2008 в 16:24)
 

Сформируйте в цикле переменную а уж потом заносите ее в файл

   
 
 автор: Maxys   (01.02.2008 в 12:40)   письмо автору
 
   для: mihdan   (01.02.2008 в 10:36)
 


$data = File("getfile.csv");
$dat_arr = explode(";", $data[3])

$file = fopen('getfile.csv','w');
        for ($i=3;$i<count($data);$i++) 
            {
                $data_array = explode(";", $data[$i]);
                for ($f=0;$f<count($data_array);$f++)
                    {
..........
                        elseif ($f == 9)
                            {
                                $cena = 10;
                                fputs($file, $cena.";");
                            }
                    }
            }
fclose($file);

в данный момент код выглядит так. Тоесть я открываю csv бегу по столбцам, в 9 столбце беру цену (там где elseif $f ==9) и пытаюсь внести с помощь fputs в этот 9 столбец цену которая равняется 10. Но ничего не выходит...

   
 
 автор: mihdan   (01.02.2008 в 17:48)   письмо автору
 
   для: Maxys   (01.02.2008 в 12:40)
 

Сформируйте в цикле переменную а уж потом заносите ее в файл

   
Rambler's Top100
вверх

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