Zurück   IP-Symcon Community Forum > IP-Symcon 2.x > Scripte, PHP, SQL

Antwort
 
LinkBack Themen-Optionen Thema durchsuchen
  #1 (permalink)  
Alt 18.07.10, 09:13
Senior Member
 
Registriert seit: Apr 2010
Beiträge: 225
Standard script duplizieren

für eine "einrichtungsscript" wollte ich ein script als template hinterlegen und dann an die instanzen kopieren.

ein script per php anlegen bekomme ich hin aber den inhalt? auch wenn ich ein script per php angelegt hab, wird es mir im objektbaum angezeigt aber ich kann es nicht speichern. habt ihr ne idee?
Mit Zitat antworten
  #2 (permalink)  
Alt 18.07.10, 10:03
Benutzerbild von wgreipl
Moderator
 
Registriert seit: Aug 2005
Ort: Fürstenfeldbruck-Aich (Bayern)
Beiträge: 2,694
Standard

Hallo mäc,

hier mal meine zusammengebauten Codesnippets die ich mit Hilfe des Forums hinbekommen habe. (Das ist das was IPS ausmacht).

In die Variable $Script den Inhalt den dein Zielskript haben soll.

Der Functionsaufruf sollte klar sein.



PHP-Code:
<?
// Übergeordnete Kategorie ermitteln
$parentID IPS_GetObject($IPS_SELF);
$parentID $parentID['ParentID'];
// Inhalt des benötigten Actionsskripts in Variable ablegen
$Script "<?
if(\$IPS_SENDER == 'WebFront') {
   SetValue(\$IPS_VARIABLE, \$IPS_VALUE);
}
?>"
;
// Actionskript erzeugen (siehe function)
$ScriptID CreateScriptByName("Skriptname"$parentID$Script);
echo 
"Skript angelegt\n";
 

function 
CreateScriptByName($ScriptNAME$ParentID$ScriptTEXT)
 {
 global 
$IPS_SELF;
 
$ScriptID = @IPS_GetScriptIDByName($ScriptNAME$ParentID);
 if (
$ScriptID == 0){
  
$ScriptID IPS_CreateScript(0);
  
IPS_SetName($ScriptID$ScriptNAME);
  
IPS_SetParent($ScriptID$ParentID);
  
IPS_SetInfo($ScriptID"This script was created by: #$IPS_SELF#");
  
$fh fopen(IPS_GetKernelDir()."scripts\\".$ScriptID.".ips.php"'w') or die("can't open file");
  
fwrite($fh$ScriptTEXT);
  
fclose($fh);
  
$ScriptPath $ScriptID.".ips.php";     //Skriptdatei
  
IPS_SetScriptFile($ScriptID$ScriptPath);
  
IPS_SetHidden($ScriptIDtrue);
  
IPS_SetPosition($ScriptID98);
 }
return 
$ScriptID;
}

?>
__________________
Gruß
Werner

Homematic(CCU), EATON-MOELLER, 1-Wire, FS20, WMRS200, 15" Touchdisplay, ChromoFlexRCIII, LMS 7.7.x, WMRS200
IPS V2.5, iFrontMobil, WebFront, MySQLDUG-Tools, IPS-Server: i5-750, 8GB, SBS2008
Mit Zitat antworten
  #3 (permalink)  
Alt 18.07.10, 19:15
Senior Member
 
Registriert seit: Apr 2010
Beiträge: 225
Standard

danke, werd ich gleich mal probieren.

ok, direkt die datei schreiben, daran hab ich gar nicht gedacht. da fällt mir gleich noch ne optimierung in auge. das script aus einem template auch lesen anstelle der variablen. werd ich hier posten wenn ich es ausprobiert hab.
Mit Zitat antworten
  #4 (permalink)  
Alt 18.07.10, 21:59
Senior Member
 
Registriert seit: Apr 2010
Beiträge: 225
Standard

also wenn ich mal positives feedback geben könnte. nun versuche ich seit zwei WAF unakzeptablen stunden ne script datei über fopen und fread ein zu lesen. ich werd irre.

immer wenn ich bis an das ende mit fread(filehandler, filesize($filename)) der datei lese bekomme ich keine daten. aber mit filesize($filename)-1 erhalte ich daten. allerdings wie -1 schon sagt, ein zeichen zu wenig.

weitere versuche mit fgets haben auch nicht geholfen.

wäre klasse wenn ihr aushelfen könnt?

PS: php kenne ich eigentlich nicht da ich aus nem anderem sprachenlager komme. aber jetzt nach zwei stunden mit google hoch und runter ist schluss
Mit Zitat antworten
  #5 (permalink)  
Alt 18.07.10, 22:08
Benutzerbild von RWN
RWN RWN ist offline
Super Moderator
 
Registriert seit: Jan 2007
Ort: Nidda(Hessen)
Beiträge: 5,964
Standard

probier es mal hiermit. file_get_contents
__________________
Gruß Rainer


Unmögliches wird sofort erledigt, Wunder dauern etwas länger.

Mit Zitat antworten
  #6 (permalink)  
Alt 18.07.10, 22:28
Senior Member
 
Registriert seit: Apr 2010
Beiträge: 225
Standard

sorry, geht nicht. einige dateien können gelesen werden.
kann es sein das ips diese im zugriff hat und man sie nicht lesen kann? es kommt allerdings keine fehlermeldung.

ich weiss nicht wo der unterschied zwischen lesbaren und "nicht lesbaren" ist.
Mit Zitat antworten
  #7 (permalink)  
Alt 18.07.10, 22:47
Senior Member
 
Registriert seit: Apr 2010
Beiträge: 225
Standard

AHHHH, Ok das passiert mir auch nur einmal.
ich hatte das ergebnis per echo ausgegeben. es war der haken "html filtern" gesetzt ! Grrr. den entfernen und schon seh ich alles.

man jetzt schon 2,5 stunden meines lebens verschwendet. wo war doch der thread wieviel zeit man mit ips verbringt?
Mit Zitat antworten
Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Frage zu: Script soll letztes FS20 Telegramm wiederholen jwka Scripte, PHP, SQL 4 04.10.09 01:41
Antis FHT Script -> WAF optimiert :) Anti Anleitungen / Nützliche PHP Scripte 19 08.03.08 13:14
Über 1-wire mit der Klingel ein Script starten andy-meyer 1-Wire, M-BUS 8 06.02.08 13:22
[gefixt] WIIPS Beta 2 0.70 chrisu IP-Symcon WIIPS für Version 1.0 16 19.01.06 21:44
Verschiedene Scripte mit else? hbraun Allgemeine Diskussion 7 29.11.05 22:43


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:42 Uhr.


Powered by vBulletin® Version 3.8.4 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0