PHP in javascript

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Remco van Akker

Remco van Akker

16/10/2012 16:15:52
Quote Anchor link
Ik ben bezig met een website die random youtube muziek video's afspeelt.
Als ik PHP in een Javascript code zet wil hij hem niet laden. En ik zie het probleem
niet in mijn code. Misschien jullie wel? Dit is de code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
        <?php
        $sql
= mysql_query('SELECT * FROM songs WHERE ind = "true" ') or trigger_error(mysql_error());
        while($fetch = mysql_fetch_array($sql)) {
        ?>

        song[<?php echo $fetch['id']; ?>]="<?php echo $fetch['link'].';'.$fetch['artiest'].';'.$fetch['titel']; ?>"
        <?php    
        }
        ?>
Gewijzigd op 16/10/2012 17:30:19 door Remco van Akker
 
PHP hulp

PHP hulp

26/04/2024 18:07:45
 
- Ariën  -
Beheerder

- Ariën -

16/10/2012 16:26:39
Quote Anchor link
Kan je je code even aanpassen tot relevant code, en deze tussen [code]-tags plaatsen?
Gewijzigd op 16/10/2012 16:27:10 door - Ariën -
 
Albert de Wit

Albert de Wit

16/10/2012 16:39:08
Quote Anchor link
Ik heb je code niet bekeken maar ik denk dat je bedoelt dat als er een statement true is dat er dan php uitgevoerd moet worden?

Kort antwoord: Nee.

Langer antwoord: PHP is serverside, dat betekent dat de clientside talen geen invloed kunnen hebben op PHP. Javascript word pas later uitgevoerd dan de PHP. Altijd
Gewijzigd op 16/10/2012 16:39:26 door Albert de Wit
 
Remco nvt

Remco nvt

16/10/2012 16:42:35
Quote Anchor link
Te veel code inderdaad.

Wat je wilt kan inderdaad wel. Je vult je JS met waardes uit PHP.
Ergens gaat dat stukje fout.

Dus kan je de broncode laten zien van een pagina die is geladen. Enkel de broncode van function getSong() { is voldoende.
 
- Ariën  -
Beheerder

- Ariën -

16/10/2012 16:43:36
Quote Anchor link
Albert de Wit op 16/10/2012 16:39:08:
Ik heb je code niet bekeken maar ik denk dat je bedoelt dat als er een statement true is dat er dan php uitgevoerd moet worden?

Kort antwoord: Nee.

Langer antwoord: PHP is serverside, dat betekent dat de clientside talen geen invloed kunnen hebben op PHP. Javascript word pas later uitgevoerd dan de PHP. Altijd

Hij vult alleen een JS array met PHP-generated output op, en dat kan best....
Gewijzigd op 16/10/2012 16:43:54 door - Ariën -
 
Remco van Akker

Remco van Akker

16/10/2012 17:07:59
Quote Anchor link
Dit is de link waar ik de website op heb staan:
http://rvamedia.nl/tracks
 
- Ariën  -
Beheerder

- Ariën -

16/10/2012 17:12:01
Quote Anchor link
Kan je even mijn reactie van 16:26:39 doorlezen, en je topicstart aanpassen?
 
Remco van Akker

Remco van Akker

16/10/2012 17:15:47
Quote Anchor link
Ik heb ze tussen de code tags gezet maar hij herkent javascript niet.
Dus weergeeft die het als tekst.
Hier is een link naar de code in pastebin:
http://pastebin.com/36kkf0S8
 
- Ariën  -
Beheerder

- Ariën -

16/10/2012 17:18:13
Quote Anchor link
quote-tags zijn geen code-tags, en plaats a.u.b. RELEVANTE code, 100 regels vallen daar niet onder.
Gewijzigd op 16/10/2012 17:20:18 door - Ariën -
 
Albert de Wit

Albert de Wit

16/10/2012 17:22:54
Quote Anchor link
Wat - Aar - bedoelt is dat je het in code moet zetten, niet in een quote veld.

Quote:
//Speel laatste liedje
function playPreviousSong() {
moveList = false;
count += 1
song = $.cookie("song" + count);
if (song == ";;") {
count -= 1
alert(lineNoPreviousSong);
} else {
loadPlayer(song);
}


moet dus worden
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
//Speel laatste liedje
function playPreviousSong() {
moveList = false;
count += 1
song = $.cookie("song" + count);
if (song == ";;") {
count -= 1
alert(lineNoPreviousSong);
} else {
loadPlayer(song);
}
 
Remco van Akker

Remco van Akker

16/10/2012 17:23:07
Quote Anchor link
Tja ik weet niet wat je wil met minder regels?
Het gaat om het javascript met de PHP er in.
Als ik de php er uit haal en ik voeg liedjes toe
in de code gaat die weer snel. Maar als ik het via
database wil doen gaat die hem nooit laden.
Gewijzigd op 16/10/2012 17:23:37 door Remco van Akker
 
- Ariën  -
Beheerder

- Ariën -

16/10/2012 17:24:46
Quote Anchor link
Remco van Akker op 16/10/2012 17:23:07:
Tja ik weet niet wat je wil met minder regels?

Niemand heeft er wat aan? Als jij een defecte telefoon hebt, neem je toch ook niet je hele huis mee naar de telecomwinkel. Maf voorbeeld, maar dit bedoelen we dus. Dat je alleen de nodige code laat zien.

Verder zie ik in je source dat de JS-array gewoon volgegooid wordt door je script.
Dus het lijkt te werken?
Wel mist er foutafhandeling. iets dat je consequent ALTIJD in hoort te bouwen.

Ook mist er een punt-komma na je JS-array elementen.
Gewijzigd op 16/10/2012 17:27:49 door - Ariën -
 
Remco van Akker

Remco van Akker

16/10/2012 17:27:06
Quote Anchor link
@Aar
Heb je gelijk in maar wat wil je dan hebben?
Alleen de PHP code? Of iets anders?
Maar de pagina laad wel gewoon bij jullie?
 
Albert de Wit

Albert de Wit

16/10/2012 17:28:08
Quote Anchor link
Gewoon even snel een vraagje hoor, is dit wel echt jouw code? Want als je niet snapt waarom hij hem niet wilt afspelen, hoe weet je dan dat dit wel werkt, en waarom heb je het dan geschreven?
 
- Ariën  -
Beheerder

- Ariën -

16/10/2012 17:28:22
Quote Anchor link
Remco van Akker op 16/10/2012 17:27:06:
@Aar
Heb je gelijk in maar wat wil je dan hebben?
Alleen de PHP code? Of iets anders?
Maar de pagina laad wel gewoon bij jullie?

Je kan toch zelf zien wat wel en niet nodig is voor je vraagstelling?
het antwoord is al eenvoudig van je vraag te beantwoorden.

Ook mist er een punt-komma na je JS-array elementen, zie ik! Voeg deze eens toe.
Gewijzigd op 16/10/2012 17:29:50 door - Ariën -
 
Albert de Wit

Albert de Wit

16/10/2012 17:31:27
Quote Anchor link
Remco van Akker op 16/10/2012 17:27:06:
Maar de pagina laad wel gewoon bij jullie?


Wat bedoel je daarmee? Dat de pagina bij jou niet wilt laden en je vraagt ons of hij bij ons wel wilt laden?
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

16/10/2012 17:34:15
Quote Anchor link
Ik heb een sterk vermoeden dat het in de id zit die aan de js script array wordt doorgegeven. Arrayes met numerieke keys moeten in JS bij 0 beginnen en dan telkens met 1 oplopend.
 
Remco van Akker

Remco van Akker

16/10/2012 17:41:39
Quote Anchor link
@Aar
De puntkomma heeft niet geholpen jammer genoeg :(

@Albert de Wit
Ja. Ja dat klopt.

@Ger
Ligt het niet aan.
De toegevoegde nummer beginnen gewoon vanaf 0
en lopen op met 1.

Toevoeging op 16/10/2012 17:52:02:

EDIT:
Raar! Als ik de browser afsluit en ik start hem weer op
en ga naar de website dan doet die het. Druk ik op F5 blijft
die weer haken :S Maar dit is de output in de broncode:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<script type="text/javascript">
//Willekeurig liedje genereren
function getSong() {


                song[0]="Aq9ZG3mHxV8&feature=plcp;ClubmusicMixes;Dance mix"
                song[1]="UW3NL-PeoiQ&feature=related;Electro House;Dance"
                song[2]="9bZkp7q19f0;PSY;Gangnamstyle"
                var songToPlay = song[Math.round(Math.random() * 445)];
        return songToPlay;
    }
</script>
Gewijzigd op 16/10/2012 17:52:34 door Remco van Akker
 
Albert de Wit

Albert de Wit

16/10/2012 18:38:37
Quote Anchor link
als ik hem open doet hij het gewoon hoor? waarom geef je dit niet aan bij je vraag?
 
Remco van Akker

Remco van Akker

16/10/2012 18:45:28
Quote Anchor link
Het is nu ook al gefixt.
Er moesten meer liedjes toegevoegd worden
en ik zag dat een javascript file een verkeerde src had.
Toch hartelijk bedankt iedereen!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.