• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

PHP Array nach Javascript

webmaster2208

New member
Hallo Forum,

dies ist mein erster Post und ehrlich gesagt, hätte ich nie gedacht das ich mich jemals so intensiv mit Javascript beschäftigen muss. Jedoch habe ich nie so richtig was damit zutun gehabt und so richtig weiss ich auch nicht mehr wonach ich bei goggle suchen muss. Ich hoffe ihr könnt mir helfen und Tipps geben.

Und zwar habe ich eine Musik Seite die immernoch mit Flash arbeitet. Das will ich nun beenden und arbeite gerade einen HTML Player ein, den ich bei Codecanyon erworben habe. Das einarbeiten hat auch alles gut geklappt. Nun möchte ich jedoch, dass beim drücken des play Buttons der Zähler für die Wiedergabe hochgeschrieben wird. Dafür muss die mitgelieferte .js Datei aber wissen welche music_id da ist. Für einen Single Player habe ich das geschafft. Nun habe ich aber Player mit Playlists mit 16 Songs. Ähhh....ich krieg das nicht hin. Weiss auch nicht mehr weiter. Mit google habe ich bisher folgendes geschafft.

Vorher solltet ihr euch Beispiel Seite ansehen.
| Beat Liste | Suche

Neben dem roten Button mit der Aufschrift Wiedergabe, kann man mit dem Kontrollkästchen alle 16 Beats auswählen und dann Wiedergabe klicken. Dann öffnet sich der Player mit dieser URL:
http://playlist.youbeats.net/music/...,9858,9857,9856,9855,9854,9853,9852,9851,9850

Dieser Befehl in PHP
PHP:
$music_id_arr = explode(',',$playSongsInPlaylist->getFormField('music_id'));
erzeugt mir diese Ausgabe
Code:
Array
(
    [0] => 9865
    [1] => 9864
    [2] => 9863
    [3] => 9862
    [4] => 9861
    [5] => 9860
    [6] => 9859
    [7] => 9858
    [8] => 9857
    [9] => 9856
    [10] => 9855
    [11] => 9854
    [12] => 9853
    [13] => 9852
    [14] => 9851
    [15] => 9850
)

Danach habe ich mi mithilfe Google das hier erarbeitet:
Code:
<script>
var music_id = <?php echo json_encode ($music_id_arr);?>;
for (var i=0;i<16;i++) {
		var musicid = music_id[i];
	}

console.log(music_id); ergibt mir
Code:
["9865", "9864", "9863", "9862", "9861", "9860", "9859", "9858", "9857", "9856", "9855", "9854", "9853", "9852", "9851", "9850"]

console.log(musicid); jedoch nur
Code:
9850

Bis hierhin ist noch alles in meiner PHP Datei.

In der Javascript Datei vom Autor habe ich an dieser Stelle:
HTML:
<div class="playbtn">

das hier eingearbeitet.
HTML:
<div class="playbtn" href="javascript(void)" onclick="musicPlayedUpdate_'+musicid+'>

Dadurch wird der Playbtn auch nur noch für den ersten Song angezeigt. :-(

Ich hoffe ich konnte das ein wenig ersichtlich erklären. Ich hoffe jemand hat einen Tipp wonach ich weiter recherchieren kann wie jeder einzelne Button seine richtige music_id zugewiesen bekommt.
 
Jetzt wo du das so erwähnst fällt mir erst auf, dass die letzte Variable ausgegeben wird.

Kann ich das überhaupt machen was ich da vor habe? Bin ich mit for falsche? Wie kann ich das denn richtig machen? Wonach muss ich suchen?
 
Hier ist der Single Player. Dort ist die music_id auf den playerbtn. Wenn Play geklickt wird oder die Musik aufgrund autoplay abgespielt wird, dann schreibt sich die Wiedergabe um +1 hoch.

Ich weiss nicht ob ich falsch denke, aber ich glaube das Problem beim Playlist Player ist, dass nur für die erste Musik der playbtn geladen wird und somit auch die richtige music_id zugewiesen wird. Wenn ich eine andere Musik anklicke wird der Playbtn neu geladen und hat dann keine oder nicht die richtige music_id ???!!! Ist mir zu hoch die Geschichte. Weiss ja nicht mal ob das überhaupt geht.
 
Zurück
Oben