[Gelöst] AGI/PHP Function ? Problem

brenner23

Neuer User
Mitglied seit
29 Mai 2011
Beiträge
136
Punkte für Reaktionen
0
Punkte
16
Hallo ich hab ein problem in meiner PHP/AGI Programmierung:
Es geht darum das ich die Ellenlange datei ein wenig aufräumen will und vieles in Functionen Verpacken will da sich einges immer wiederholt ... Hier mal ein Beispiel.

Code:
 ...    
     $agi->answer();
     $agi->exec_setlanguage('de');
Dieser teil untern Markiert
##################################
## Ansage der Rufnummer 4
if ($Angesagt != 1  ){
    print "Ansage der Rufnummer 4";
    print "\n";
$agi->say_Digits( $argv[2] );
}
##################################

Dieser Teil wiederholt sich und e geht auch 100 % tig nimmt nur wie andere Sachen Platz Weg !... also hab ich mir gedacht mach ich es so...

Code:
function SayNumberToDial($number,$Angesagt){
if ($Angesagt != 1  ){
    print "Ansage der Rufnummer 4";
    print "\n";
$agi->say_Digits( $number );
}
}
...
..
...

##############################################################################
SayNumberToDial($argv[2],$Angesagt); <<<< Also hier soll er nach oben was er auch tut abrer kann den AGI befehl nicht ausführen !
##############################################################################

problem ist das er wenn er in die Functionspringt das er beim AGI befel abspringt..

es geht hier nicht um die definition Funktion, weil diese schent ja zu Funktionieren, es geht hier um den $agi->say_Digits(...)

mfg
 
Zuletzt bearbeitet:
Das hat nichts mit AGI im Speziellen zu tun, sondern allgemein mit PHP. $agi gibt es in der function so nicht. Entweder übergibst Du es als Argument, das ist die saubere Sache, oder Du verwendest global.

Aktiviere das Error-Logging in eine Datei im gleichen Verzeichnis wie das Skript, dann siehst Du solche Fehler ganz schnell.
 
Hallo,
Also ich habe in der PHP.ini
folgendes
display_errors = On

dann hatte ich apache neutestartet nachdem ich die säntliche alte Logs gelöscht hatte

hab den in den in die AGI folgendes eingefügt wo der austeigt !
function SayNumber($number,$DataString){
$agi->say_Digits( $number );
}
SayNumber(123456,1);

Da ist der ausgestiegen!

dann machte ich dieses

function SayNumber($number,$DataString){
#$agi->say_Digits( $number );<<< Auskommentiert
}
SayNumber(123456,1);

Kein ausstieg !

die Error log isr leer !

trotz

#!/usr/bin/php -q
<?php
error_reporting(E_ALL & ~E_NOTICE & ~E_WARNING);
include 'phpagi.php';

Wie kann ich Globas und local wa nutzen in function ????
Und wo kann ich es nachvolziehen wie die variabeln genutzt werden ?








#################################
Nachtrag
hab mal eben was ausprobiert !
function SayNumber($number,$DataString){
global $agi; <<< Neu eigefügt !
$agi->say_Digits( $number );
}
SayNumber(123456,1);

nun gehts !
 
Zuletzt bearbeitet:
Also ich habe in der PHP.ini folgendes...
dann hatte ich apache neutestartet nachdem ich die säntliche alte Logs gelöscht hatte

Apache hat mit der Ausführung von AGI nichts zu tun. Die laufen als CLI.

display_errors bringt nichts, solange Du stderror nicht umleitest. log_errors und error_log, dann kannst Du die Fehler wie gesagt in ein eigenes Logfile schreiben lassen.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.