MySql Event Scheduler Aufrufen, PHP Script

Ich bin Herumspielen mit MySql Events für die erste Zeit. Hier ist die Veranstaltung...

DELIMITER $$
CREATE EVENT testEvent
ON SCHEDULE EVERY 1 minute STARTS '2014-01-01 03:00:00' 
DO BEGIN
  /*
  INSERT INTO test(text) VALUES ('text');* <- THIS WORKS JUST FINE
  */
  SET @exec_var = sys_exec('c:\wamp\bin\php\php5.4.12\php c:\mySite\testit.php');
END $$
DELIMITER;

Den sys_exec() Aufruf von php scheint nicht zu funktionieren und ich kann nicht herausfinden, warum. Es gibt nicht viel auf dem internet über diese. Ich weiß, das php-Skript funktioniert, weil wenn ich c:\wamp\bin\php\php5.4.12\php c:\mySite\testit.php auf der Kommandozeile bekomme ich die Ergebnisse. testit.php nur macht das exakt gleiche einfügen, das ist auskommentiert in der Veranstaltung. Irgendwelche Ideen, warum sys_exec() ist nicht mit meinem script? Oder wenn Fehler vorhanden sind, wie würde ich mich über die Anmeldung oder die Anzeige?

(Ich weiß, es gibt wohl Sicherheitsbedenken und andere Dinge, die ich noch nicht gedacht haben. Dies ist nur bei der ersten proof-of-concept-Sachen. Aber wenn Sie sehen keine Grund, warum ich sollte nicht gehen diesen Weg und verwenden Sie einen PHP-daemon stattdessen würde mich interessieren Gründe, warum. Dieser Weg scheint nur, wie es wäre viel einfacher, aufzustehen und zu laufen, als zu lernen/Aufbau eines PHP-daemon.)

Dank!

Dies ist alles, was in der testit.php script...

try
{
    $dbh = new PDO("mysql:host=********;dbname=********", ********, ********);
    $dbh->setAttribute( PDO::MYSQL_ATTR_USE_BUFFERED_QUERY,true );
    $dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING );
}
catch(PDOException $e) { echo $e->getMessage(); }

$q1 = $dbh->prepare("INSERT INTO test(text) VALUES ('text')");
$q1->execute();
InformationsquelleAutor gfrobenius | 2014-01-14
Schreibe einen Kommentar