Partage
  • Partager sur Facebook
  • Partager sur Twitter

problème avec switch

    24 novembre 2005 à 15:06:45

    Bonjour à tous !!

    J'ai un petit problème avec la commande switch !!

    Explications :

    Je souhaiterais avoir sur mon site un seule page en php, du type :

    http://monsite.com/page.php?type=voir&id_video=01

    Le numéro de la vidéo correspond à id_video et le type est soit "voir", soit "envoi".
    Mes videos sont en SWF et dans un dossier différent des pages d'envoi, en PHP3


    <?php

    if(isset($id_episode)){

            if(!is_numeric($id_episode)){

                    echo "<p>Erreur !<p>";
                    echo "<br>";
                    echo "<p>Redirection en cours...";
                    echo "<script language=\"javascript\" type=\"text/javascript\">";
                    echo "<!--";
                    echo "window.location.replace(\"http://monsite.com\");";
                    echo "-->";
                    echo "</script>";


                    exit;

            }

    }


    //---------------------------------------------

    $dossiervoir="http://monsite.com/episodes/voir";
    $dossierenvoi="http://monsite.com/episodes/envoi";

    switch($type)
    {
        case 'voir':
            $dossier=$dossier_voir;
            $extension=".swf";
            break;
        case 'envoi':
            $dossier=$dossier_envoi;
            $extension=".php3";
            break;
    }

    $chemin=$dossier."/".$id_video.$extension;

    if(file_exists($chemin))
        include($chemin);
    else
        include($dossier."/erreur.php");


    switch($id_episode)

    {

    case '01': include("$dossier/video01.swf");break;
    case '02': include("$dossier/video02.swf");break;
    case '03': include("$dossier/video03.swf");break;

    default: include("$dossier/erreur.php");break;

    }




    ?>


    Je me doute bien qu'il y a des erreurs, merci de m'aider à les corriger !
    Merci

    • Partager sur Facebook
    • Partager sur Twitter
      24 novembre 2005 à 15:57:51

      déjà tu peux mettre dans tes includes que des .php
      • Partager sur Facebook
      • Partager sur Twitter
        24 novembre 2005 à 16:08:58

        Voila je poste ceci, le code faisant des includes de swf est bien entendu completement faux. Sinon pour tout ce qui est du reste, j'ai optimisé et arragé ;)
        <?php

        if(isset($id_episode)){
                if(!is_numeric($id_episode)){
                        echo '<p>Erreur !<p>'
                        ,'<br />'
                        ,'<p>'
                        ,'Redirection en cours...<br />'
                        ,'<a href="http://monsite.com" title="redirection">Cliquez ici pour vous rediriger immediatement.</a>'
                        ,'</p>'
                        ,'<script language="javascript" type="text/javascript">'
                        ,'<!--'
                        ,'window.location.replace("http://monsite.com";);'
                        ,'-->'
                        ,'</script>';

                        exit;
                }
        }

        //---------------------------------------------

        if($type==='voir')
                $chemin='episodes/voir/'.$id_video.'.swf';
        elseif($type==='envoi')
                $chemin='episodes/envoi/'.$id_video.'.php3';
        else{
                //En cas de problème faire ceci!
        }


        if(file_exists($chemin))
            include($chemin);
        else
            include($dossier.'/erreur.php');

        switch($id_episode){
            case '01': include($dossier.'/video01.swf');break;
            case '02': include($dossier.'/video02.swf');break;
            case '03': include($dossier.'/video03.swf');break;

            default: include($dossier.'/erreur.php');break;
        }
        ?>
        • Partager sur Facebook
        • Partager sur Twitter
          24 novembre 2005 à 16:10:49

          Citation : Th3*M@@D

          déjà tu peux mettre dans tes includes que des .php


          ça me semble bien catégorique comme affirmation ?
          • Partager sur Facebook
          • Partager sur Twitter
            24 novembre 2005 à 16:41:28

            Citation : Bison

            Citation : Th3*M@@D

            déjà tu peux mettre dans tes includes que des .php


            ça me semble bien catégorique comme affirmation ?

            Je pense qu'il faisait la comparaison avec le .swf qui n'a rien a faire ici (sauf s'il met du php dans des fichiers qui renomme en .swf mais enfin on touche à l'absurde [et l'inutile])
            • Partager sur Facebook
            • Partager sur Twitter
              26 novembre 2005 à 18:40:10

              Bonsoir !
              J'ai réussi à faire cela mais je commets toujours quelques erreurs !
              surement les ELSE d'après moi, mais aussi les AND dans les IF... :?
              Pouvez-vous m'aider svp ?

              <?php

              $type=$_GET['type'];
              $id=$_GET['id_episode'];

              //---------------------------------------------

              $dossier_voir="/dossier/voir";
              $dossier_envoi="/dossier/envoi";

              switch($type)
              {
                  case 'voir':
                      $dossier=$dossier_voir;
                      $ext=".swf";
                      break;
                  case 'envoi':
                      $dossier=$dossier_envoi;
                      $ext=".php3";
                      break;
              }

              $chemin=$dossier."/".$id.$ext;
              $chemin2="/dossier2";


              if(file_exists($_SERVER[DOCUMENT_ROOT] . $chemin) AND $type="voir")

                      echo "<OBJECT classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\"
               codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0\"
               WIDTH=100% HEIGHT=100%>"
              ;
                      echo "<PARAM NAME=loop VALUE=false>";
                      echo "<PARAM NAME=quality VALUE=high>";
                      echo "<EMBED src=\"<? echo \"$_SERVER[DOCUMENT_ROOT]\"; ?><? echo \"$chemin\"; ?>\" loop=false quality=high WIDTH=100% HEIGHT=100% TYPE=\"application/x-shockwave-flash\" PLUGINSPAGE=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\">";
                      echo "</EMBED>";
                      echo "</OBJECT>";
                      // include($_SERVER[DOCUMENT_ROOT] . $chemin);
                     
              else (file_exists($_SERVER[DOCUMENT_ROOT] . $chemin) AND $type="envoi")

              include($_SERVER[DOCUMENT_ROOT] . $chemin);

              else
                      include($_SERVER[DOCUMENT_ROOT] . $chemin2 . "/erreur.php");

              ?>


              Merci !
              • Partager sur Facebook
              • Partager sur Twitter
                26 novembre 2005 à 19:01:25

                les fonctions include, include_once, require et require_once accepte tout type d'extensions, du moment que c'est un fichier texte par exemple on peut faire include('includes/menu.inc');

                • Partager sur Facebook
                • Partager sur Twitter
                  26 novembre 2005 à 19:07:28

                  include avec un fichier swf inclut le code brut du fichier
                  • Partager sur Facebook
                  • Partager sur Twitter
                    26 novembre 2005 à 20:51:55

                    Citation : Th3*M@@D

                    déjà tu peux mettre dans tes includes que des .php



                    Moi sa marche invente rien alors... :-°
                    • Partager sur Facebook
                    • Partager sur Twitter

                    problème avec switch

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown