joggi: fsockopen Fehlermeldung unterdrücken

Hallo,
ich habe über fsockopen eine Verbindung zu einem Proxyserver aufgebaut, um Daten uas dem Internet abzuholen. Das funktioniert auch ganz gut. Wir haben 2 Proxys im Einsatz.
Jetzt kommt es manchmal vor, dass ein Proxy nicht zur Verfügung steht und ich die Verbindung zum anderen Proxy aufbauen muß.

Ich dachte das könnte ich automatisch mit einer if-Abfrage machen , indem ich die Variable $proxy_fp abfrage. Falls diese FALSE ist sollte die Verbindung mit dem 2. Proxy aufgebaut werden.

Leider bekomme ich immer eine Fehlermeldung, wenn die Verbindung zum ersten Proxy nicht klappt, anstatt dass die if-Abfrage aufgerufen wird.

Geht das überhaupt so wie ich mir das vorstelle oder ist das gar nicht möglich?

if (!($proxy_fp = fsockopen($proxy_name, $proxy_port))){
    $proxy_fp = fsockopen($proxy_name_2, $proxy_port);
 }

Danke
joggi

  1. Ich grüsse den Cosmos,

    Geht das überhaupt so wie ich mir das vorstelle oder ist das gar nicht möglich?

    @fsockopen unterdrück Fehlermeldungen. Ist aber nur _bedingt_ zu empfehlen und grundsätzlich muss eine interne Fehlerprüfung erfolgen.

    Möge das "Self" mit euch sein

    --
    Ich bin keine Signatur, ich fülle nur diesen leeren Platz mit sinnlosen Worten
  2. PHP-Fehlermeldungen kannst du mit einem vorangestellten "@"-Zeichen vor der fehlerwerfenden Funktion unterdrücken. Dann funktionieren deine Abfragen wieder auch wieder ordnungsgemäß.

    --
    Gruß, Daniel | In der Realität ist die Wirklichkeit ganz anders.
    1. Hallo

      PHP-Fehlermeldungen kannst du mit einem vorangestellten "@"-Zeichen vor der fehlerwerfenden Funktion unterdrücken. Dann funktionieren deine Abfragen wieder auch wieder ordnungsgemäß.

      Das tun sie ganz offensichtlich nicht. Es gibt einen (offensichtlich grundsätzlichen) Fehler, und es ist <del>besser</del><ins>richtig</ins> ihm nachzugehen um ihn beseitigen zu können, als seine Vermeldung zu unterdrücken.

      http://de2.php.net/manual/de/function.fsockopen.php beschreibt im Absatz zum Fall "false", wie man sich mit den Argumenten "errno" und "errstr" eine Fehlermeldung ausgeben lassen kann (siehe auch die Codebeispiele). Damit sollte man den Fehler eingrenzen können.

      Tschö, Auge

      --
      Die Musik drückt aus, was nicht gesagt werden kann und worüber es unmöglich ist zu schweigen.
      (Victor Hugo)
      Veranstaltungsdatenbank Vdb 0.1