Probleme beim Anlegen eines Skripts?

Hallo

hab ein Problem beim automatischen Anlegen eines Skripts. Mit dem folgenden Befehlen lege ich ein Skript mit dem entsprechendem Namen an.

$ScriptID = IPS_CreateScript(0);
IPS_SetName($ScriptID, „Temp-Feuchte-Werkstatt“);
echo "Skript-ID: ". $ScriptID;

Das Skript wird angelegt, aber ich kann es nicht speichern. Bekomme immer die Fehlermeldung (siehe Bild).
Was stimmt in meinem Befehlen nicht nicht???

Ciao
Andrge

Du musst noch einen Dateinamen setzen und dafür sorgen, dass die Datei existiert.

IPS_SetScriptFile - IP-Symcon :: Automatisierungssoftware

paresy

Hallo Paresy,
danke für die schnelle Antwort.
Mit genau dem Beispiel der Doku hatte ich das gleiche Verhalten. Seh ich den Wald vor lauter Bäumen nicht?

Andrge

Habe ebenfalls ein Problem, beim anlegen eines scripts und bei der zuordnung…


$ScriptPath = IPS_GetKernelDir(). "scripts\\auf.php";
$id=IPS_CreateScript(0);
IPS_SetScriptFile($id, $ScriptPath);
IPS_SetParent($id,$parentid);
IPS_SetName($id,"auf");

Die datei existiert, wenn ich die datei ins stammverzeichnis C:\ lege und die $scriptpath auf $ScriptPath=„auf.php“ aender, klappert es auch, aber nicht, mit dem kompletten Pfad. (OK, hier hat er dann auf die im script verzeichnis zugegriffen, die noch da war) ^^

Ausserdem funktioniert der in der Doku angegebene befehl bei mir nicht so, wie er da steht:

$ScriptPath = IPS_GetKernelDir. "scripts\\Example.ips.php"; // Skript mit Pfad

$ScriptPath = IPS_GetKernelDir(). "scripts\\Example.ips.php"; // Skript mit Pfad

Der untere ist der, bei dem es funktioniert, schaetze mal, ein kleiner „schoenheitsfehler“ in der Doku…

OK, fehler gefunden… aber dann versteh ich die Doku erst recht nicht^^

Habe jetzt aus den ScriptPath folgendes gemacht:

$ScriptPath = "auf.php";

Dateiname des PHP Skripts (relativ zum „/scripts“ Ordner)

aber warum dann in der Doku:

<?
$ScriptPath = IPS_GetKernelDir. "scripts\\Example.ips.php"; // Skript mit Pfad
$ScriptID = IPS_CreateScript(0);                  // leeres IPS Skript erzeugen
IPS_SetScriptFile($ScriptID, $ScriptPath); 
?>

dieses funktioniert demnach ja nicht, sondern muesste es ja

<?
$ScriptPath = "Example.ips.php"; // Skript 
$ScriptID = IPS_CreateScript(0);                  // leeres IPS Skript erzeugen
IPS_SetScriptFile($ScriptID, $ScriptPath); 
?>

heissen…
und wenn ich z.B. in IPS Stammverzeichnis will, …\ heissen…

Oder lieg ich nu irgentwo falsch?
Aber irgentwas passt ja nicht…