IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Comment retirer la succession de warning ? ou remplacer usleep ? [PHP 5.2]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 18
    Par défaut Comment retirer la succession de warning ? ou remplacer usleep ?
    Bonjour,

    Voici mon problème, j'arrive à exécuter mon fichier php, il m'indique bien mon résultat souhaité.

    Par contre avant d'arriver à cela, j'ai une succession de warning indiquant

    Warning: usleep() has been disabled for security reasons in <fichier.php>

    J'ai bien trouvé des fonctions autre qu'usleep.
    Il y a sleep() --> même erreur de warning
    Il y a set_time_limit() --> ERROR: Connection to <server> timed out

    Sinon j'ai tenté de trouvé un moyen de retirer les warning sous PHP5.2 mais je ne suis pas certains de bien appliquer cette fonction.

    La fonction trouvée est : error_reporting(0);

    Je viens poster car je suis à cours d'idée. En soit je n'ai pas de blocage direct, c'est seulement que voir une page avec une file de warning, pour trouver le résultat, en bas de page, c'est moche

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 625
    Par défaut
    Qu'est ce qui t'oblige à utiliser usleep ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 18
    Par défaut
    Voici le code ou cela bloque :

    private function servdev_connect()
    {
    //Disable Errors Warning
    //error_reporting(0);
    //- Get the TCP protocol (can also use SOL_TCP instead)
    $protocol = getprotobyname('tcp');

    //- Create a socket
    $this->socket = socket_create(AF_INET, SOCK_STREAM, $protocol);
    if ($this->socket === false)
    throw New Exception('Could not create socket. Reason: ' . socket_strerror(socket_last_error()));

    //- The socket should time out after 3 seconds, so make it non blocking for now
    socket_set_nonblock($this->socket);

    $error = NULL;
    $attempts = 0;
    //- The time out value has to be in milliseconds
    $timeout_ms = $this->timeout * 1000;
    $connected;

    //- Connect the socket to the server dev
    while (!($connected = @socket_connect($this->socket, $this->ip_address, $this->service_port)) && $attempts++ < $timeout_ms)
    {

    $error = socket_last_error();

    //- If the error is different from the below, there is a problem
    if ($error != SOCKET_EINPROGRESS && $error != SOCKET_EALREADY)
    {
    socket_close($this->socket);
    throw New Exception('Could not connect to server dev: ' . socket_strerror($error));
    exit;
    }

    //- Wait 1 second between attempts
    usleep(1000);

    }

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 18
    Par défaut
    En soit, j'ai testé cela en local et çà fonctionne trés bien.
    J'ai eu certains retard avec mon hébergeur car auparavant je n'avais pas la fonction bcmath active, puis un probleme de version PHP5.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 18
    Par défaut
    J'ai fais un test bidon mais qui marche... exemple :

    je crée mon fichier test.php

    <?php

    usleep(1000);

    echo 'Test';

    ?>

    J'obtiens le résultat :

    Warning: usleep() has been disabled for security reasons in /home/ophos17194/domains/dods-ealeague.eu/public_html/test.php on line 3
    Test

    je modifie mon fichier test.php

    <?php
    error_reporting(0);
    usleep(1000);

    echo 'Test';

    ?>

    J'obtiens le résultat :
    Test


    c'est exactement ce que je voudrais mais je n'arrive à appliquer dans le cas ennoncé

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 625
    Par défaut
    les balises code (#) dans la barre de formatage l'éditeur de messages, ce sera beaucoup moins fatigant pour ceux qui veulent t'aider.

    et sinon, au lieu de vouloir mettre l'error reporting à 0, retire la fonction usleep vu qu'elle ne fonctionne pas.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 18
    Par défaut
    La fonction sleep ou usleep me sert, si je la supprime, j'ai pas la possibilité de poursuivre.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 29/05/2006, 10h40
  2. Réponses: 6
    Dernier message: 23/05/2006, 15h59
  3. [VB.Net][DataGrid] Comment retirer des items d'un ComboBox ?
    Par graphicsxp dans le forum Windows Forms
    Réponses: 9
    Dernier message: 20/12/2005, 11h46
  4. comment retirer le soulignage d'un lien hypertexte?
    Par Stépha dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 08/12/2004, 12h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo