NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Drop down list v php a video v Javascripte

V předchozím kvízu, Online test znalostí JavaScript, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Peter Schoeller:7.2.2017 0:54

Ahojte.
Mam problem s vyberom premennej z dropdown listu a jej vsadenim do javascriptu.

// php cast....
<select id="videoSelect">
    <option value = "">---Select video---</option>
    <?php
        while ( $video=mysqli_fetch_assoc($sql_video)) {
                echo "<option value=" .$video['id']. ">" .$video['video_name']."</option>";
     }

    ?>
      </select>

// javascript cast:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script type="text/javascript">
            $(document).ready(function(){
            $("#video2").attr('src','../video/<?php echo $video['video_key']; ?>.mp4.').val();
            });
</script>

Dropdown list funguje normalne, a aj ked susam napisat jednoduchu premennu a upravim script napr. takto, tak to funguje, samozrejme len to jedno video.

<?php
$video1 = "example_video1";
?>

<script type="text/javascript">
            $(document).ready(function(){
            $("#video2").attr('src','../video/<?php echo $video1; ?>.mp4.').val();
            });
</script>

Cielom je ziskavat z dropdown listu premennu a tu vkladat do scriptu a prehravat vsetky videa zo zoznamu.

 
Odpovědět
7.2.2017 0:54
Avatar
Peter Schoeller:13.2.2017 16:18

Tak podarilo sa mi to vyriesit aj ked trochu "nepohodlne" cez form a reload stranky

// php cast:

        <form method="get" action="<?php echo $_SERVER['PHP_SELF'];?>">

    <select id="videoSelect" name="movie">
    <option value = "">---Select video---</option>
    <?php
        while ( $video=mysqli_fetch_assoc($sql_video)) {
                echo "<option value=" .$video['video_key']. ">" .$video['video_name']."</option>";
                }
    ?>
      </select>
      <input type="submit">
      </form>

// javascript cast:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script type="text/javascript">
            $(document).ready(function(){
            $("#video").attr('src','../video/<?php echo substr($_SERVER["QUERY_STRING"], 6, 40);?>.mp4').val();
            });
</script>

// prehranie videa na stranke:

        <video id="video" width="480" controls autoplay poster="/images/video_3.png">
                <source type="video/mp4">
                        Your browser does not support HTML5 video.
                </video>

Ma niekto napad, ako to vylepsit radsej cez metodu post namiesto get? Aby nebolo vidno v URL celu adresu s nazvom video suboru.

Editováno 13.2.2017 16:19
 
Nahoru Odpovědět
13.2.2017 16:18
Avatar
Jiří Fencl
Člen
Avatar
Jiří Fencl:13.2.2017 17:40

Zda se, ze jste ne uplne pochopil JQ , tento kod

$(document).ready(function(){
            $("#video").attr('src','../video/<?php echo substr($_SERVER["QUERY_STRING"], 6, 40);?>.mp4').val();
            });

nedava smysl - zkousite ziskat value prvku video

musite pouzit metodu na odchyt zmeny toho selectu - napr

$(document).ready(function(){
   $("#videoSelect").on('change', function(){
      $('video').attr('src', '../video/'+$(this).val()+'.mp4' );
   )};
 });

jestli teda do value tech options vkladas nazev souboru

Editováno 13.2.2017 17:41
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
13.2.2017 17:40
Avatar
Jiří Fencl
Člen
Avatar
Jiří Fencl:13.2.2017 17:46

Jeste mi sotek ukradl # u toho video :) ma byt $('#video')

 
Nahoru Odpovědět
13.2.2017 17:46
Avatar
Odpovídá na Jiří Fencl
Peter Schoeller:13.2.2017 17:58

Bohuzial tvoj zapis nefunguje.
Ano, hodnoty value su nazvy suborov.
"video_name" je nazov suboru, napr. "Pekne Valentinske video", ktory sa zobrazuje na stranke
a "video_key" je "pek_val_vid". ktory sa ma vkladat na prehratie na stranke.

Edit: Moja odpoved patrila k tvojmu prvemu prispevku.

Editováno 13.2.2017 18:00
 
Nahoru Odpovědět
13.2.2017 17:58
Avatar
Jiří Fencl
Člen
Avatar
Jiří Fencl:13.2.2017 18:00

Jedodussi by bylo poslat link nebo vlozit vygenerovany html do jsfiddle

 
Nahoru Odpovědět
13.2.2017 18:00
Avatar
Odpovídá na Jiří Fencl
Peter Schoeller:13.2.2017 18:11

Vdaka, uz to funguje :-)
Aj ked tam mas malu chybu.

  )};
});

spravne ma byt:

  });
});
 
Nahoru Odpovědět
13.2.2017 18:11
Avatar
Jiří Fencl
Člen
Avatar
Jiří Fencl:13.2.2017 18:14

nz :) sotek se na notesove klavesnici vyradil vic nez jsem zaznamenal - porad si nemuzu zvyknout

 
Nahoru Odpovědět
13.2.2017 18:14
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.