Visa ett inlägg
Oläst 2007-11-15, 11:46 #8
Jawns avatar
Jawn Jawn är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Aug 2004
Inlägg: 986
Jawn Jawn är inte uppkopplad
Mycket flitig postare
Jawns avatar
 
Reg.datum: Aug 2004
Inlägg: 986
För den som vill kolla automatiskt mot taxation centret.

Tänk dock på att vissa utländska databaser ligger nere vissa tider på dygnet vilket innebär att man inte kan kanske kolla om ett VATnummer är korrekt eller inte.


Enjoy

Kod:
<?php
 *
 function vatcheck($input)
 { 
	// Administrator email
	$email = "[email protected]"; 
	$headers = "From: $email\r\n"; *

	$iso = substr($input,0,2); 
	$vat = substr($input,2); 
 * * *
	// Vi använder CURL, postar vidare vissa fields
	$ch = curl_init(); 
	curl_setopt($ch, CURLOPT_URL, "http://ec.europa.eu/taxation_customs/vies/viesquer.do"); 
	curl_setopt($ch, CURLOPT_POST, 1); 
	curl_setopt($ch, CURLOPT_POSTFIELDS, "iso=$iso&vat=$vat"); 
	curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
	$res = curl_exec ($ch); 
	curl_close($ch); 


	if(strpos($res, "Yes, valid VAT number")) 
	{ 

 *$sql = ""; 
 *while(eregi("<font face=\"Verdana\" size=\"2\">([^<]*)</font>", $res, $match))
 *{ 
 *	$res = substr($res, strpos($res, $match[1])); 
 *	$match[1] = trim(str_replace("(dd/mm/yyyy)", "", $match[1])); 
 * * * * * * 
 *	if($match[1] != "VAT number" AND $match[1] != "Member State" AND $match[1] != "Name" AND $match[1] != "Address" AND $match[1] != "Date when request received") $sql .= "'".$match[1]."',"; 
 *} 
 * * * * 
 *// Vi sparar ner vatnummer informationen ner i en databas
 *if($sql) mysql_query("INSERT INTO table VALUES(".substr($sql,0,-1).")");
 *
 *else
 *	// Möjligt fel har inträffat
 *	mail($email, "Script error", "There's a problem with the VAT checking function.", $headers); 
 * * *
 *return "Yes, valid VAT number ".substr($sql,0,-1).""; 
	}
	elseif(strpos($res, "No, invalid VAT number"))
	{ 
 *return "No, invalid VAT number"; 
	}
	else
	{	// Möjligt fel har inträffat
 *mail($email, "Script error", "There's a problem with the VAT checking function.", $headers); 
 *return 0; 
	} 
 } 
 *
Print vatcheck("SE202100284101"); 
 *
?>
Jawn är inte uppkopplad   Svara med citatSvara med citat