ThomasFR: -MYSQL in Funktion

Beitrag lesen

Hallo,

ich bin Anfänger was PHP-Funktionen angeht. Jetzt habe ich ein Problem mit dem Datenbank Connect innerhalb einer Funktion.
Das Script läuft außerhalb der Funktion (es werden Datensätze eingetragen). Aber innerhalb der Funktion erhalte ich Fehler wie "Notice: Undefined variable: db in". Ich bin total überfragt.
Kann ich innerhalb einer Funktion keine DB Inserts machen?

Hier mein Script:

function get_new_pixels() {  
	require_once 'pixel/PixelServiceAutoload.php';  
  
	// ##################  VORSICHT NICHT copy/pasten  ##################  
	$wsdl = array();  
	$wsdl[PixelServiceWsdlClass::WSDL_URL] = 'https://tom-test.vgwort.de/services/1.0/pixelService.wsdl';  
	$wsdl[PixelServiceWsdlClass::WSDL_CACHE_WSDL] = WSDL_CACHE_NONE;  
	$wsdl[PixelServiceWsdlClass::WSDL_TRACE] = true;  
	$wsdl[PixelServiceWsdlClass::WSDL_LOGIN] = 'test';  
	$wsdl[PixelServiceWsdlClass::WSDL_PASSWD] = 'test';  
  
	/**************************************  
	* Example for PixelServiceServiceOrder  
	*  
	*	Parameter: Anzahl ( int )  
	*  
	*/  
	$pixelServiceServiceOrder = new PixelServiceServiceOrder( $wsdl );  
	// sample call for PixelServiceServiceOrder::orderPixel()  
	if($pixelServiceServiceOrder->orderPixel(new PixelServiceStructOrderPixelRequest( 2 ))){  
		//print_r($pixelServiceServiceOrder->getResult());  
		$response = $pixelServiceServiceOrder->getResult();  
  
		echo 'Domain: ' . $response->domain . '<br>';  
		echo 'Datum: ' . $response->orderDateTime . '<br>';	  
  
		foreach( $response->pixels->pixel as $pixel ){  
			echo 'Public ID: ' . $pixel->publicIdentificationId . ' - ';  
			echo 'Private ID: ' . $pixel->privateIdentificationId . ' ';  
			$sql = "INSERT INTO zuordnung (`oeffentlicherkey`,`privaterkey`,`countserver`) VALUES  
				( '$pixel->publicIdentificationId' , '$pixel->privateIdentificationId' , '$response->domain')";  
			$db->query($sql);  
			{  
				printf("%d Datensätze<br> \n ", $db->affected_rows);  
			}  
		}  
  
	}else{  
		print_r($pixelServiceServiceOrder->getLastError());  
	}  
} 

Danke für eure Hilfe