Ich lasse per www-reader/parser einen Wert (z.B. Kurswert Dollar „910,00“) in eine Variable schreiben.
Bei Überschreiten einer def. Grenze (z.B. 930 Dollar) soll per TT_SendMail (danke an Toni für die Klasse-Tools) eine Email versendet werden.
Da ich leider des php programmierens nicht mächtig bin (mir fehlt einfach die Zeit im Moment, auch wenn´s nur eine einfache if-then-Bedingung ist) wollte ich die Auslösung per „Ereignis hinzufügen“ festlegen. Leider sind hier nur die Felder „bei Variablenänderung/Aktualisierung/bestimmtem Wert“ aktivierbar, nicht aber „bei Grenzüberschreitung“.
Gibt es eine Möglichkeit das zu aktivieren/wo liegt mein Fehler?
Mit einem festen Wert kann ich leider nichts anfangen, da der Dollarkurs nicht unbedingt auf 930,00 Dollar geht bevor er weiter steigt (oder wieder fällt )
danke für jeden Hinweis!
Grüße & schönes WE!
Daniel
ps. falls jemand gerade einen „flow“ hat und mir im handumdrehen die if-then-bedingung in php schreiben kann wäre das ebenfalls klasse, dann hätte ich schonmal was gelernt.
der Parser liefert einen Text(String) und keinen Zahlenwert(Float). Damit ist es natürlich nicht möglich eine Grenzüberschreitung festzustellen.
Du muß den String erst umwandeln und kannst dann die Grenzüberschreitung feststellen.
$Kurs = str_replace(",",".",$Kurs); // Komma durch Punkt ersetzen
settype($Kurs, "Float"); //in Float umwandeln
If ($Kurs >= 930){
// Mail senden
}
@nancilla
vielen dank, die 1. Variante funktioniert prima!
@attain
danke für deinen Hinweis, da hast du natürlich recht. Danke auch für den Code, jetzt weiß ich auch schonmal wie ich den Variablentyp umwandeln kann!
bitte beachte das Du , wenn es auf die Nachkommastelle ankommt, im String das „Komma“ durch einen „Punkt“ ersetzt. Da durch die floatval- oder auch durch die settype- Funktion, die Zahlen nach dem „Komma“ einfach abgeschnitten werden.
Ansonsten machen beide Funktionen das selbe.
Teste mal das aus:
ich habe mal versucht das mit einzubauen. Entsprechend meiner nicht vorhandenen php-Kenntnisse ist mir mein Rechner nun schon zum 10. Mal mit Bluescreen abgeschmiert.
Hier der Code (bitte nicht schlagen, ich habe wirklich keine Ahnung :o )
<?
$variable = floatval(49696 /*[Sonstige\Text Parser]*/);
$variable = str_replace(",",".",$variable); // Komma durch Punkt ersetzen
settype($variable, "Float"); //in Float umwandeln
if ($variable >= 930){
TT_SendMail("asdf@gmx.net", "Kurs ~930$", "$variable");
}
?>
Ich möchte einfach nur dass per TT_SendMail der Variablenwert $variable übergeben wird. In $variable soll eigentlich der Kurswert der ID 49696 stehen.
Das Script klappt bis auf die Übergabe von $variable. Hier scheine ich falsch zu machen was nur falsch zu machen geht… so viele Bluescreens habe ich in den letzten 5(!) Jahren nicht gesehen… es ist vermutlich mit das einfachste was man machen kann, aber ich krieg es nicht gebacken…
…wenn es nur nicht immer 5 Minuten dauern würde bis der Rechner wieder hochgefahren ist… :rolleyes:
…das Versenden der Emails klappt ja, nur sobald ich versuche in den zu übergebenden Text den Variablenwert einzubauen schiesst sich (oder vielmehr schiesse ich ) den Rechner ab.
Scheint das Script soweit i.O. zu sein? Kann ich mir fast nicht vorstellen…
hat wahrscheinlich nichts mit deinen Abstürzen zu tun, aber wenn du „str_replace“ verwendest, dann mache das in einer anderen Reihenfolge, sonst bringt dir das nichts:
Danke für die Hinweise.
Leider gibt´s immer noch Bluescreen. Sind nur ca. 1.5 Sekunden bevor der Rechner neu startet, das Einzige was ich lesen kann ist „Driver_IRQ_not_less_or_equal“ als Fehlermeldung.
verstehe das nicht…
Achso; Muss ich eigentlich die ID des Textparsers oder die der Variable angeben, in welche der geparste Wert geschrieben wird? (beides scheint zu funktionieren - und mit entsprechender Änderung durch den Zusatz „$variable“ bei TT_SendMail endet beides beim Bluescreen)…
Hatte zwischenzeitlich selbst einige Dinge versucht, ist immer wieder abgeschmiert. Kann man mit „(string)$variable“ so einfach eine float- in eine string-Variable umwandeln?
Langsam nervt der Bluescreen… muss erstmal was arbeiten jetzt und versuche es später noch einmal… vielleicht fällt dir/euch ja doch noch ein Fehler auf.
Ich kenne die Anforderungen von Tonis „TT_SendMail“ nicht, da ich es (noch) nicht verwendet habe.
Aber dass „TT_SendMail“ einen Bluescreen erzeugt finde ich buggy :rolleyes:
Vielleicht hats ja auch eine andere Ursache…
danke für eure Mühe…
klappt leider immer noch nicht. Dass sich dabei immer der komplette Rechner abschiesst finde ich schon krass (vor allem nervig).
Vielleicht muss ich Toni nochmal eine pm schreiben, vielleicht weiß er woran es liegen kann…
Die (string) Variante macht genau das was Sie soll. Das ist hier aber scheinbar nicht das Problem. Und laut paresy wandelt der Befehl ansich die Variable schon in einen String.