Insert date din feed cu php in mysql
Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
-
trif
- Mesaje:500
Insert date din feed cu php in mysql
Buna ziua,
am un script php care imi selecteaza din baza de date de pe un alt server niste informatii si eu as dori sa stiu cum pot sa le preiau si sa le introduc la mine in bd.
Adica scriptul imi preia
iar eu vreau ca informatiile repective sa le introduca la mine in bd.
Am ceva ideie dar nu stiu cum sa il codific.
Daca am puteti ajuta cu ceva idei.
Astept raspuns.
Multumesc anticipat.
Cu stima Trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif
MarPlo
Mesaje:4343
Salut
Depinde in ce structura sunt acele date adaugate in feed, ce format, cum sunt separate intre ele.
La modelul dat de tine se aplica explode() ca sa separi acele date in elementele unui array; uite un exemplu:
Cod: Selectaţi tot
$str = 'link_produs -- link_img -- pret';
$str_ar = array_map('trim', explode('--', $str));
$sql = "INSERT INTO tabel (produs, img, pret) VALUES ('". $str_ar[0] ."', '". $str_ar[1] ."', '". $str_ar[2] ."')";
// efectueaza insert-ul ...
trif
Mesaje:500
Buna seara,
Am reusit sa fac asta:
Cod: Selectaţi tot
$lines = file_get_contents("http://site.ro/feed.php");
$arr = explode("|", $lines);
//var_dump($arr);
echo $arr[6]; link_produs
echo $arr[7]; link_img
echo $arr[8]; pret
echo '<br>';
echo $arr[18];
echo $arr[19];
echo $arr[20];
si imi aprare ceea ce am nevoie.
Cum pot sa fac ca sa imi exact ceea ce imi trebuie. nu pot sa le dau 6,7,8, 18, 19, 20, etc.
Astept raspuns.
Cu stima trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif
MarPlo
Mesaje:4343
Depinde cum e structura acelui feed. Daca datele sunt ordonate pe linii si separate prin "|", sau separate intr-un singur sir lung.
trif
Mesaje:500
Buna seara, acum nu stiu cum sa zic ca sunt ordonate ci stiu ca sunt separate cu bara respectiva |.
In privat ti-am trimis un link ca exemplu ca sa nu dau aici un link ca sa fac reclama.
Cu stima Trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif
MarPlo
Mesaje:4343
Din ce am vazut, feedul e cam diversificat. Are 2 feluri de separatori ">" si "|", plus cod html; structurate pe randuri.
Ca idee, poti folosi functia file() ca sa adaugi randurile intr-un array, le parcurgi cu for() si aplici explode() si Insert la fiecare.
Uite un exemplu din care te poti inspira.
Continut feed.txt
Cod: Selectaţi tot
abc | 123 | a1b
mno | 567 | m5o
xyz | 890 | x8z
Cod php
Cod: Selectaţi tot
$feed_ar = file('feed.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
$nr_feed = count($feed_ar);
for($i=0; $i<$nr_feed; $i++) {
$feed_row = array_map('trim', explode('|', $feed_ar[$i]));
echo '<br>'. $feed_row[0] .' / '. $feed_row[1] .' / '. $feed_row[2];
}
trif
Mesaje:500
Buna seara,
am reusit intr-un fel sa fac dar am intampinat o alta problema.
am rezultatele asa:
Cod: Selectaţi tot
aaaaaaa| bbbbbbbb | ccccccccccc | dddddddd| eeeeeeee|
aaaaaaa1| bbbbbbbb1 | ccccccccccc1 | dddddddd1| eeeeeeee1|
aaaaaaa2| bbbbbbbb2 | ccccccccccc2 | dddddddd3| eeeeeeee2|
aaaaaaa3| bbbbbbbb3 | ccccccccccc3 | dddddddd3| eeeeeeee3|
acestea sunt rezultatele care imi iasa din feed iar problema este urmatoarea:
cum fac ca sa ignore anumite informatii si sa mi le preia doar pe unele:
cam asa:
Cod: Selectaţi tot
bbbbbbbb | ccccccccccc | dddddddd|
bbbbbbbb1 | ccccccccccc1 | dddddddd1|
bbbbbbbb2 | ccccccccccc2 | dddddddd3|
bbbbbbbb3 | ccccccccccc3 | dddddddd3|
Deoarece am nevoie doar de anumite informatii dintr-un rand.
M-am tot gandit ca ar putea fi cu array sa le spun ca
Cod: Selectaţi tot
array[2] |array[3]|array[4]|
array[7] |array[8]|array[9]|
array[12] |array[13]|array[14]|
dar nu stiu sa fac si sa stie care este pasul cate sa ia si pe care.
Asta cu array este una dar daca se poate si prin while ar fi si mai bine.
Cred ca este o problema cam grea si daca se poate sa ma ajutati.
Astept raspuns.
Multumesc anticipat.
Cu stima Trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif
MarPlo
Mesaje:4343
Din exemplu dat de tine, daca vrei sa pastrezi a 2-a, a 3-a si a 4-a parte din separarea cu "|" de la fiecare rand, merge simplu asa:
Cod: Selectaţi tot
$feed_ar = file('adresa_feed', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
$nr_feed = count($feed_ar);
for($i=0; $i<$nr_feed; $i++) {
$feed_row = array_map('trim', explode('|', $feed_ar[$i]));
echo '<br>'. $feed_row[1] .' / '. $feed_row[2] .' / '. $feed_row[3];
}
Daca e vorba de altceva, trebuie sa ai anumite criterii exacte /simetrice prin care sa pastrezi unele date sau sa excluzi, dupa o anumita structura logica sau tipar RegExp.
In cazul ala nu te pot ajuta fiindca poate fi prea dificil daca nu e un format logic simetric la toate randurile, si nu ma implic mai mult.
trif
Mesaje:500
Buna ziua,
Merge perfect.
Multumesc pentru ajutor.
Cu stima Trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif
Subiecte similare
- Adaugare orar zilele saptamanii in baza de date
PHP - MySQL - XML
Primul mesaj
Salut
Am o baza de date cu toate locatiile
location_id | name |address |telephone | open
Si un formular prin care incarc datele in bd....
Ultimul mesaj
Treaba cu adaugare json in mysql e simpla, se rezuma la adaugarea unui sir care contine ghilimele duble.
Problema la tine e ca acele ghilimele sunt...