|
| Bring variabel fra PHP til JS Fra : Kurt G |
Dato : 24-07-11 19:00 |
|
Jeg vil gerne bringe en variabel fra PHP til javascript og har forsøgt at
kopiere en stump kode fra ASP, som virker.
ASP:
<script type="text/javaScript">
maxnummer=<%=max%> //Bringer max over i javascript
</script>
<%
som jeg har lavet om til:
PHP:
?>
<script type="text/javaScript">
maxnummer=<?php $antal ?> //Bringer max over i javascript
</script>
<?php
Men variablen $antal bliver ikke bragt over i maxnummer.
Hvorfor ikke?
Mvh Kurt
| |
Philip Nunnegaard (24-07-2011)
| Kommentar Fra : Philip Nunnegaard |
Dato : 24-07-11 19:05 |
|
Kurt G skrev:
> maxnummer=<?php $antal ?> //Bringer max over i javascript
Ret det til:
maxnummer=<?php echo $antal; ?> //Bringer max over i javascript
--
Philip
| |
Kurt G (24-07-2011)
| Kommentar Fra : Kurt G |
Dato : 24-07-11 21:21 |
|
"Philip Nunnegaard" <nunnenospam@hitsurf.dk> skrev i en meddelelse
news:4e2c5edc$0$36570$edfadb0f@dtext01.news.tele.dk...
> Kurt G skrev:
>
>> maxnummer=<?php $antal ?> //Bringer max over i javascript
>
> Ret det til:
>
> maxnummer=<?php echo $antal; ?> //Bringer max over i javascript
>
>
> --
> Philip
Og det virkede: Tak!
Mvh Kurt
| |
Philip Nunnegaard (25-07-2011)
| Kommentar Fra : Philip Nunnegaard |
Dato : 25-07-11 23:03 |
|
Kurt G skrev:
> Og det virkede: Tak!
Jeg gætter på at du ville have skrevet <?=$antal?>
Det virker også ofte.
Dog har jeg 1-2 gange oplevet at en server havde deaktiveret muligheden,
så man skulle skrive "echo". Derfor har jeg på det sidste vænnet mig til
at gøre det.
--
Philip
| |
Chano Andersen (26-07-2011)
| Kommentar Fra : Chano Andersen |
Dato : 26-07-11 16:43 |
|
Den 26-07-2011 00:02, Philip Nunnegaard skrev:
> Kurt G skrev:
>
>> Og det virkede: Tak!
>
> Jeg gætter på at du ville have skrevet <?=$antal?>
>
> Det virker også ofte.
> Dog har jeg 1-2 gange oplevet at en server havde deaktiveret muligheden,
> så man skulle skrive "echo". Derfor har jeg på det sidste vænnet mig til
> at gøre det.
>
>
Parameteren i PHP opsætningen hedder short open tags. Den bevirker at
ovenstående virker, samt at <? opfattes som start på en PHP blok. Det er
PISSE irriterende, hvis man skal servere XML via PHP, da XML filer
starter med <?xml.
- Chano Andersen
| |
Martin (29-07-2011)
| Kommentar Fra : Martin |
Dato : 29-07-11 09:15 |
|
On 26-07-2011 17:42, Chano Andersen wrote:
> Den 26-07-2011 00:02, Philip Nunnegaard skrev:
>> Kurt G skrev:
>>
>>> Og det virkede: Tak!
>>
>> Jeg gætter på at du ville have skrevet <?=$antal?>
>>
>> Det virker også ofte.
>> Dog har jeg 1-2 gange oplevet at en server havde deaktiveret muligheden,
>> så man skulle skrive "echo". Derfor har jeg på det sidste vænnet mig til
>> at gøre det.
>>
>>
>
> Parameteren i PHP opsætningen hedder short open tags. Den bevirker at
> ovenstående virker, samt at <? opfattes som start på en PHP blok. Det er
> PISSE irriterende, hvis man skal servere XML via PHP, da XML filer
> starter med <?xml.
Og bare rolig i PHP 5.4 der vil short_open_tags altid være slået til, og
kan ikke ændres i php.ini, sammen med safe_mode altid vil være off
(ENDELIG!) :)
<?php echo '<?xml'; ?>
Så sådan skal du nok starte xml output, hvis ikke man har en klasse til
at lave sådan noget trivielt noget :)
| |
Chano Andersen (29-07-2011)
| Kommentar Fra : Chano Andersen |
Dato : 29-07-11 19:01 |
|
Den 29-07-2011 10:15, Martin skrev:
> Og bare rolig i PHP 5.4 der vil short_open_tags altid være slået til, og
> kan ikke ændres i php.ini, sammen med safe_mode altid vil være off
> (ENDELIG!) :)
Ret crappy. Det burde slet ikke være tilladt at bruge short_open_tags..
Fatter slet ikke formålet, der skal satme mange filer til at det kan
betale sig. :P
> <?php echo '<?xml'; ?>
> Så sådan skal du nok starte xml output, hvis ikke man har en klasse til
> at lave sådan noget trivielt noget :)
Det er så også sådan jeg plejer at gøre det, bare for en sikkerheds
skyld. Men det er stadig pisse irriterende.
Mit XML behov er i øvrigt ikke stort nok til at have en klasse til
formålet, og at benytte PHPs XML funktioner til at generere en XML fil
ud fra et database udtræk, giver slet ingen mening, når det ikke skal
manipuleres efterfølgende. ;)
- Chano Andersen
| |
Ukendt (30-07-2011)
| Kommentar Fra : Ukendt |
Dato : 30-07-11 19:56 |
|
Den 29-07-2011 20:01, Chano Andersen skrev:
> Den 29-07-2011 10:15, Martin skrev:
>> Og bare rolig i PHP 5.4 der vil short_open_tags altid være slået til, og
>> kan ikke ændres i php.ini, sammen med safe_mode altid vil være off
>> (ENDELIG!) :)
>
> Ret crappy. Det burde slet ikke være tilladt at bruge short_open_tags..
> Fatter slet ikke formålet, der skal satme mange filer til at det kan
> betale sig. :P
Ahh, <?=$var;?> er nu ret OK, især hvis man bruger PHP som template motor.
<?=$var==1?'OK':'Nej'?>
<?php echo $var==1?'OK':'Nej'?>
8 tegns forskel
>
>> <?php echo '<?xml'; ?>
>> Så sådan skal du nok starte xml output, hvis ikke man har en klasse til
>> at lave sådan noget trivielt noget :)
>
> Det er så også sådan jeg plejer at gøre det, bare for en sikkerheds
> skyld. Men det er stadig pisse irriterende.
>
> Mit XML behov er i øvrigt ikke stort nok til at have en klasse til
> formålet, og at benytte PHPs XML funktioner til at generere en XML fil
> ud fra et database udtræk, giver slet ingen mening, når det ikke skal
> manipuleres efterfølgende. ;)
Det er netop det der er så rart med klasser, min "create xml" klasse er
godt og vel 5-6 år gammel, men jeg bruger den stadig og har ikke ændret
noget nævneværdigt i den :)
| |
Chano Andersen (01-08-2011)
| Kommentar Fra : Chano Andersen |
Dato : 01-08-11 17:52 |
|
Den 30-07-2011 20:55, Martin skrev:
> Den 29-07-2011 20:01, Chano Andersen skrev:
>> Ret crappy. Det burde slet ikke være tilladt at bruge short_open_tags..
>> Fatter slet ikke formålet, der skal satme mange filer til at det kan
>> betale sig. :P
>
> Ahh, <?=$var;?> er nu ret OK, især hvis man bruger PHP som template motor.
>
> <?=$var==1?'OK':'Nej'?>
> <?php echo $var==1?'OK':'Nej'?>
> 8 tegns forskel
Jeg kan ikke se hvorfor man skal komprimere koden så meget. Det gør den
bare mere ulæselig... Så fordi man skal tilføje de mellemrum du har
udeladt, samt lidt ekstra tegn, betyder ikke alverden. 5MB webhotellerne
er stort set udryddede, så et par tegn ekstra betyder INTET, andet end
at koden er lettere at læse.
Se f.eks. disse 4 eksempler, de gør præcis det samme, men læsbarheden af
koden er der stor forskel på.
<?for($i=0;$i<10;$i++){echo"{$i}\n";}?>
<?php for($i=0;$i<10;$i++){echo"{$i}\n";}?>
<?php
for($i=0; $i<10; $i++)
{
echo "{$i}\n";
}
?>
<?php
for($i=0; $i<10; $i++):
echo "{$i}\n";
endfor;
?>
<?php flader langt nemmere i øjnene når man scroller igennem en fil, end
<? gør det, når der i forvejen er en pæn del HTML. L
> Det er netop det der er så rart med klasser, min "create xml" klasse er
> godt og vel 5-6 år gammel, men jeg bruger den stadig og har ikke ændret
> noget nævneværdigt i den :)
Jo, men så meget ens er der heller ikke i mine XML'er, og primært er det
et spørgsmål om at lave en XML skabelon, og så gentage et element x
antal gange alt efter antal poster i database udtrækket...
Det eneste jeg ville bruge en sådan klasse til, ville være XML Headeren
i toppen. Måske lidt spild af tid? :P
- Chano Andersen
| |
Philip Nunnegaard (01-08-2011)
| Kommentar Fra : Philip Nunnegaard |
Dato : 01-08-11 18:57 |
|
Chano Andersen skrev:
> Jeg kan ikke se hvorfor man skal komprimere koden så meget. Det gør den
> bare mere ulæselig... Så fordi man skal tilføje de mellemrum du har
> udeladt, samt lidt ekstra tegn, betyder ikke alverden. 5MB webhotellerne
> er stort set udryddede, så et par tegn ekstra betyder INTET, andet end
> at koden er lettere at læse.
I det hele taget er webhoteller der måler pladsen i MB vist næsten
udryddet i dag.
--
Philip
| |
Mads Lie Jensen (31-07-2011)
| Kommentar Fra : Mads Lie Jensen |
Dato : 31-07-11 06:35 |
|
On Fri, 29 Jul 2011 20:01:29 +0200, Chano Andersen
<sunsite012011@chanoandersen.dk> wrote:
>> Og bare rolig i PHP 5.4 der vil short_open_tags altid være slået til, og
>> kan ikke ændres i php.ini, sammen med safe_mode altid vil være off
>> (ENDELIG!) :)
>
>Ret crappy. Det burde slet ikke være tilladt at bruge short_open_tags..
>Fatter slet ikke formålet, der skal satme mange filer til at det kan
>betale sig. :P
Nu er det heller ikke 'rigtige' short_open_tags der vil være slået til
altid i php 5.4. Det er <?= som altid vil være der. Altså hvad der
svarer til <?php echo ...
Om rigtige short_open_tags helt forsvinder fra 5.4 og om der kommer en
<?php= også, er jeg ikke helt med på.
--
Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
Gartneriet - http://www.gartneriet.dk/
| |
Philip Nunnegaard (29-07-2011)
| Kommentar Fra : Philip Nunnegaard |
Dato : 29-07-11 18:30 |
|
Chano Andersen skrev:
> Parameteren i PHP opsætningen hedder short open tags. Den bevirker at
> ovenstående virker, samt at <? opfattes som start på en PHP blok. Det er
> PISSE irriterende, hvis man skal servere XML via PHP, da XML filer
> starter med <?xml.
Det har jeg også haft meget "sjov" med, da jeg en gang skulle uploade et
XML-sitemap på mit webhotel.
Stig Johansen hjalp mig med problemet i sin tid.
--
Philip
| |
|
|