Wo steckt der Wurm drin?

Sasser

Erfahrenes Mitglied
Hallo!

Immer wenn ich die folgende Datei ausfuehre bekomme ich den Fehler:

PHP Notice: Use of undefined constant dom - assumed 'dom' in /srv/www/vhosts/###DOMAIN###/httpdocs/files/updatefrei.php on line 16 PHP Notice: Use of undefined constant endung - assumed 'endung' in /srv/www/vhosts/###DOMAIN###/httpdocs/files/updatefrei.php on line 16 PHP Notice: Use of undefined constant dom - assumed 'dom' in /srv/www/vhosts/###DOMAIN###/httpdocs/files/updatefrei.php on line 21 PHP Notice: Use of undefined constant endung - assumed 'endung' in /srv/www/vhosts/###DOMAIN###/httpdocs/files/updatefrei.php on line 21 du-bist-sommer.de frei

Script:

PHP:
<?php
#!/usr/bin/php5 -f

         $dbname = "";
         $dbhost = "";
         $dbuser = "";
         $dbpwd = "";
         $db = @mysql_connect($dbhost, $dbuser, $dbpwd);
         @mysql_select_db($dbname, $db) or die ("Keine Verbindung zur MySQL Datenbank");

		        $info=mysql_query("SELECT * FROM abfrage WHERE frei=1", $db);
			if(mysql_num_rows($info)>0)
				{
				while($search=mysql_fetch_array($info))
					{
						$link = "http://www.".$search[dom].".".$search[endung];
						$frei = @fopen($link, "r");
						if($frei===FALSE)
							{
							$bfrei = 1;
							echo $search[dom].".".$search[endung]." frei<br>";
							}
						else
							{
							$bfrei=0;
							$update = mysql_query("UPDATE abfrage SET frei=$bfrei WHERE id=$search[id]", $db);
							echo $search[dom].".".$search[endung]."nicht mehr frei<br>";
							}
						}
				}
	mysql_close($db);

?>

Ich finde einfach den Fehler nicht! Was mache ich falsch? Wo steckt der Wurm drin?
 
Da „dom“ und „endung“ nicht wie für Zeichenketten nötig in Anführungszeichen gesetzt sind, gibt es diesen Fehler, da keine gleichnamigen Konstanten existieren. Doch da PHP in diesem Punkt (leider) tolerant ist, nimmt der Interpreter an, dass eigentlich Zeichenketten, also 'dom' und 'endung, gemeint sind. Genau das steht übrigens auch in der Fehlermeldung.
 
Hmm und wie bekomme ich das wieder weg?

Bitte sei mir knaedig :rolleyes: und hilf mir

Einfach in "" setzten und das wars?
 
Ja sorry, aber ich fuehre das Script per Cronjob aus und da muss ich dann immer die Zeit planen. Scheint aber zu funktionieren :)

Eine kleine Frage noch: Ich habe einen Cronjob geplant, der die Datenbank sichert, nur bekomme ich immer: /bin/sh: Sicherung_Datenbank.sql: Permission denied

Der Befehl sieht so aus: /usr/bin/mysqldump -h rdbms -u ##BENUTZERNAME### -pm###PASSWORT### DB###DATENBANKNAME### > Sicherung_Datenbank.sql

Nur leider funktioniert das eben nicht! Die Datei mysqldump existiert auch im Ordner /usr/bin/! Also daran kann es nicht liegen!

Jemand irgendeine Idee? :confused:
 
Zurück