BlkLotus
30-11-2007, 16:53
Boas
Fiz uma loja em osCommerce para um conhecido, onde a maneira que arranjei para importar os mais de 33 mil artigos para dentro da base de dados foi através de um CSV criado pelo software de gestão, e que depois um script que eu fiz em PHP insere os valores que lá estão, na respectiva tabela do osCommerce.
O código é este:
<?php
mysql_connect("localhost", "******", "******");
mysql_select_db("*****");
$abreFicheiro = fopen("products.csv", "r");
if (!$abreFicheiro){
echo ("<p>Ficheiro não encontrado</p>");
} else {
echo ("<p>Ficheiro dos produtos foi lido, e transferida a informação</p>");
while ($registos = fgetcsv ($abreFicheiro, 2048, ";")) {
$result = mysql_query("insert into products (products_id,products_quantity,products_model,prod ucts_image,products_price,products_date_added,prod ucts_last_modified,products_date_available,product s_weight,products_status,products_tax_class_id,man ufacturers_id,products_ordered) values ('$registos[0]','$registos[1]','$registos[2]','$registos[3]','$registos[4]','$registos[5]','$registos[6]','$registos[7]','$registos[8]','$registos[9]','$registos[10]','$registos[11]','$registos[12]')");
}
}
fclose($abreFicheiro);
?>
Está tudo a correr bem, ele importa tudo como deve ser e os artigos que já estão associados as respectivas familias num outro ficheiro aparecem no site, tudo porreiro.
O PROBLEMA, é que ele só lê até 4775 artigos!!! :wow: Já tentei colocar ficheiros diferentes, alterados, limpo a BD e volto a importar... e nada... chega ao artigo 4775 e ele simplesmente acaba o script e diz que correu tudo bem.
O que se passa? É algum limite nas configurações do MySQL? É limite de alguma função do PHP que eu não conheço?
Agradecia alguma ajuda que possam dar, é que são 33 mil artigos, e na loja virtual só estão a aparecer os 4775, o que representa apenas uma pequeníssima parte!
Btw... eu não percebo muito de programação, praticamente só comecei agora a mexer mais nisto depois de ele me pedir para o fazer, e diga-se de passagem que até estou a gostar e a aprender a cada dia que passa, mas agora ficou-me esta cena "entalada" a meio do caminho e não consigo perceber o porque :'(
Abraço!
Fiz uma loja em osCommerce para um conhecido, onde a maneira que arranjei para importar os mais de 33 mil artigos para dentro da base de dados foi através de um CSV criado pelo software de gestão, e que depois um script que eu fiz em PHP insere os valores que lá estão, na respectiva tabela do osCommerce.
O código é este:
<?php
mysql_connect("localhost", "******", "******");
mysql_select_db("*****");
$abreFicheiro = fopen("products.csv", "r");
if (!$abreFicheiro){
echo ("<p>Ficheiro não encontrado</p>");
} else {
echo ("<p>Ficheiro dos produtos foi lido, e transferida a informação</p>");
while ($registos = fgetcsv ($abreFicheiro, 2048, ";")) {
$result = mysql_query("insert into products (products_id,products_quantity,products_model,prod ucts_image,products_price,products_date_added,prod ucts_last_modified,products_date_available,product s_weight,products_status,products_tax_class_id,man ufacturers_id,products_ordered) values ('$registos[0]','$registos[1]','$registos[2]','$registos[3]','$registos[4]','$registos[5]','$registos[6]','$registos[7]','$registos[8]','$registos[9]','$registos[10]','$registos[11]','$registos[12]')");
}
}
fclose($abreFicheiro);
?>
Está tudo a correr bem, ele importa tudo como deve ser e os artigos que já estão associados as respectivas familias num outro ficheiro aparecem no site, tudo porreiro.
O PROBLEMA, é que ele só lê até 4775 artigos!!! :wow: Já tentei colocar ficheiros diferentes, alterados, limpo a BD e volto a importar... e nada... chega ao artigo 4775 e ele simplesmente acaba o script e diz que correu tudo bem.
O que se passa? É algum limite nas configurações do MySQL? É limite de alguma função do PHP que eu não conheço?
Agradecia alguma ajuda que possam dar, é que são 33 mil artigos, e na loja virtual só estão a aparecer os 4775, o que representa apenas uma pequeníssima parte!
Btw... eu não percebo muito de programação, praticamente só comecei agora a mexer mais nisto depois de ele me pedir para o fazer, e diga-se de passagem que até estou a gostar e a aprender a cada dia que passa, mas agora ficou-me esta cena "entalada" a meio do caminho e não consigo perceber o porque :'(
Abraço!