Witam, od jakiegoś czasu męcze się z problemem którym jest właściwe pobbranie danych z plików HTML-a które zawsze mają identyczną strukturę. Poniżej moja struktura bazy danych :

-
-- Struktura tabeli dla  `crawler_produkty`
--

CREATE TABLE IF NOT EXISTS `crawler_produkty` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `aktywnosc` tinyint(1) NOT NULL DEFAULT '1',
  `nazwa` varchar(250) NOT NULL,
  `cena` decimal(10,2) NOT NULL,
  `podatek_VAT` varchar(3) NOT NULL DEFAULT '23%',
  `jednostka` varchar(4) NOT NULL DEFAULT 'szt.',
  `kategoria` int(11) NOT NULL,
  `krotki_opis` text NOT NULL,
  `opis` text NOT NULL,
  `magazyn` int(11) NOT NULL,
  `dostepnosc` varchar(255) NOT NULL,
  `zdjecia` text NOT NULL,
  `zastosowanie` text NOT NULL,
  ` zamienniki` int(11) NOT NULL,
  `nr_prducenta` int(11) NOT NULL,
  `producent` varchar(255) NOT NULL,
  `nr_oryginalu` int(11) NOT NULL,
  `numer_polcar` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=125 ;

Tutaj znajduje sie kod skryptu w PHP wyciągającego dane z plików, Nie wiem dlaczego ale skrypt ten nie zbiera wszystkich wpisów z pliku przez co z bazy Nie wyciąga wszystkich ID aut. Proszę was o pomoc!

<?php
	set_time_limit ( 0 );			//wyzerowanie limitu czasu wykonywania dla skryptu
	require_once('db.php');			//połączenie z bazą danych
	
	/*
	*	
	*/
	
	$dir = 'sciezka do katalogu w którym są pliki';
	
	

function scan($url, $id){
  $original_file = file_get_contents($url);
  if(strpos($original_file, 'skp-karta-prod') !== false){
	getSkp($original_file, $id);
	usleep(1);
	
  }
}

function getSkp($html, $url){
	$start = strpos($html, 'skp-karta-prod');
	$substr = substr($html, $start);
	$start = strpos($substr, '</form>');
	$skp = mysql_real_escape_string(str_replace('skp-karta-prod fix">' , '', substr($substr, 0, $start)));
	
	$start = strpos($html, '<h3>');
	$substr = substr($html, $start);
	$start = strpos($substr, '</h3>');
	$_name = mysql_real_escape_string(str_replace('<h3>' , '', substr($substr, 0, $start)));
	
	$start = strpos($html, '<h4>');
	$substr = substr($html, $start);
	$start = strpos($substr, '</h4>');
	$_owner = mysql_real_escape_string(str_replace('&nbsp;' ,'', str_replace('<h4>' , '', substr($substr, 0, $start))));
	
	$start = strpos($html, '<p class="">Kod produktu: <span class="">');
	$substr = substr($html, $start);
	$start = strpos($substr, '</span></p>');
	$_code = mysql_real_escape_string(str_replace('<p class="">Kod produktu: <span class="">' , '', substr($substr, 0, $start)));
	
	$start = strpos($html, '<p class="skp-cena">Cena: <b class="skp-cena-karta-produktu">');
	$substr = substr($html, $start);
	$start = strpos($substr, '</b>');
	$_price = str_replace(',','.',str_replace('<p class="skp-cena">Cena: <b class="skp-cena-karta-produktu">' , '', substr($substr, 0, $start)));
	$_price =(float)$_price;


	
	$start = strpos($html, '<h5>Informacje:</h5>');
	if ($start !== false) {
	$substr = substr($html, $start);
	$start = strpos($substr, '</ul>');
	
	$_short_desc = str_replace('<ul class="karta-produktu-atrybuty">' , '', substr($substr, 0, $start));
	$_short_desc = str_replace('<h5>Informacje:</h5>' , '', $_short_desc);
	$_short_desc = nl2br(trim(strip_tags($_short_desc)));
	$_short_desc=mysql_real_escape_string($_short_desc);
	}else
	$_short_desc='';

	$start = strpos($html, '<h5>Dodatkowe informacje:</h5>');
	if ($start !== false) {
	$substr = substr($html, $start);
	$start = strpos($substr, '</ul>');
	$_long_desc = str_replace('<ul class="karta-produktu-atrybuty">' , '', substr($substr, 0, $start));
	$_long_desc = str_replace('<h5>Dodatkowe informacje:</h5>' , '', $_long_desc);
	$_long_desc = nl2br(trim(strip_tags($_long_desc)));
	
	$_long_desc=mysql_real_escape_string($_long_desc);
	}else
	$_long_desc='';

	if($_short_desc!='')
	$_short_desc.='<br/>'.$_long_desc;
	else
	$_short_desc.=$_long_desc;


	$_long_desc='';


	$start = strpos($html, '<p class="skp-dostepnosc">Dostępność towaru: <b>');
	$substr = substr($html, $start);
	$start = strpos($substr, '</b>');
	$_magazyn_name = mysql_real_escape_string(str_replace('<p class="skp-dostepnosc">Dostępność towaru: <b>' , '', substr($substr, 0, $start)));

	
	$auto = str_replace('-od-','',$url);
	$oddaj=array();
	$pobierz_url=preg_match_all('#\<a href=\"/auto/(.*?)\>(.*?)\</a\>(.*?)\</td\>(.*?)\<td\>(.*?)\</td\>(.*?)\<td\>(.*?)\</td\>(.*?)\<td\>(.*?)\</td\>(.*?)\<td\>(.*?)\</td\>#is',$html,$oddaj );
	$auta=$oddaj[2];
	//print_r($oddaj[2]);
	//print_r($oddaj[11]);	
		$auta_id='';

		if(!empty($auta))
			{
				
				$i=0;
				$temp=array();	
					foreach($auta as $a)
					{
					
					$tempA=explode('-',$oddaj[11][$i]);
					
					
					if($tempA[1]==' .')
					$a=$a.$tempA[0].'-';
					else
					$a=$a.$oddaj[11][$i];
					
					

					$result = mysql_fetch_row(mysql_query("SELECT auto_id FROM auto WHERE REPLACE(LOWER(CONCAT( marka, ' ', model, ' ', pojemnosc, ' ', opis )),' ','')= REPLACE(LOWER('$a'),' ','') LIMIT 1"));

					usleep(0.2);
					if($result[0] > 0)
					{
					
					if(!in_array($result[0],$temp))
					{
					if($auta_id=='')
						{
						$auta_id.=$result[0];
						$temp[]=$result[0];
						}
					else
						{$auta_id.=', '.$result[0];
						$temp[]=$result[0];}
					}	
					}
					//echo( $a.'-'.$result[0].'\n');
					$i++;
					}
	
			}

		
	mysql_query("INSERT INTO `crawler_produkty` (`nazwa`,`cena`,`krotki_opis`,`opis`,`magazyn`,`dostepnosc`,`zastosowanie`,`producent`,`numer_polcar`) VALUES 
												('$_name','$_price','$_short_desc','$_long_desc','5','$_magazyn_name','$auta_id','$_owner','$_code');");


}
open_dir($dir);

function open_dir($dir) {
	global $files_counter;
	if ($dh = opendir($dir)) {
		while (($file = readdir($dh)) !== false) {
			if($file != '..' && $file != '.') {
				if(is_dir($dir . DIRECTORY_SEPARATOR . $file)) {
					open_dir($dir . DIRECTORY_SEPARATOR . $file);
				} else {
					$tmp = explode(',', $file);
					$id = substr(implode(',',array_slice($tmp,1)), 0, -5);
					//echo "$id";
					scan($dir . DIRECTORY_SEPARATOR . $file, $id);
					//echo "<br/>";
					$files_counter++;
				}
			}
		}
		closedir($dh);
	}
}

echo $files_counter;

?>

Tutaj znajdują się 3 przykładowe pliki HTML-a z których wyciągam dane oraz strukura mojej bazy z autami (potrzebna do przypisania ID auta w polu zastosowanie)

http://wyslijplik.pl/download.php?sid=s9BtHWWZ