Nasıl bir html giriş etiketinin değeri elemanının içinde bir php değişken dahil edebilirim?

6 Cevap php

Ben bir giriş alanının değeri elemanının içinde bir veritabanı tablosundan bir değer eklemek için çalışıyorum.

Bu ne var, ama çalışmıyor

?><input type="text" size="10" value="<?=date("Y-m-d", 
strtotime($rowupd['upcoming_event_featured_date']))?>" name="upcoming_event_featured_date" 
id="keys"/><?php

Ben daha önce bunu yaptım, ama genellikle bu gibi çıktı

print '<input type="text" size="10" value="'.date("Y-m-d", 
strtotime($rowupd['upcoming_event_featured_date'])).'" name="upcoming_event_featured_date" 
id="keys"/>';

; Baskı kullanmadan bunu yapmanın uygun bir yol ('' nedir?

6 Cevap

Bu farklı bir sunucuya taşımak veya config kısa etiketleri izin vermemek için değişti eğer kırma app devam edecektir, çünkü her zaman, tam php etiketlerini kullanmak iyi bir fikirdir.

?>
<input type="text" size="10" value="<?php
echo(date("Y-m-d", strtotime($rowupd['upcoming_event_featured_date'])));
?>"name="upcoming_event_featured_date" id="keys"/><?php

Ayrıca, eksik olduğunu unutmayın; Lütfen php kod ucundan.

Bu ayrıştırma html php geri ve dördüncü geçmek zorunda tutacak gibi, HTML dışında sadece echo () daha iyi çok PHP şeyi tutmak için bulmak ve olabilir.

Diğer bazı cevaplar belirttiğim gibi, emin short_open_tag php.ini etkin olduğundan emin olun. Bu <?= sözdizimini kullanmanıza olanak sağlar. Birçok insan tüm sunucular onları izin verirse, kısa etiketlerini kullanarak tavsiye etmiyoruz, ama sen başka bir sunucuya bu hareketli olmayacak emin değilseniz, bunu gayet iyi olduğunu düşünüyorum.

Bunun yanı sıra, diğer üzerinden bir yol seçmek için herhangi bir teknik nedenle bilmiyorum. Kod okunabilirliği ana odak noktası olmalıdır. Örneğin, bunu çıktısı önce bir değişkene değerinizi ayarlamak isteyebilirsiniz:

$featured_date = date("Y-m-d",strtotime($rowupd['featured_date']));

?><input type="text" value="<?=$featured_date?>" name="featured_date" /><?php

Aslında, HTML bir bloğunun ortasında yaparken mümkün olduğunca az işlem yapmak için denemek istiyorum. Eğer gerektiği gibi değişkenleri ekleyerek, tüm HTML sonra, senaryonun başında çıkışını tüm değişkenleri tanımlamak eğer işler çok daha temiz olacak. Neredeyse bu noktada, ama bir şablon motoru yükü gerek kalmadan çiftleşmiş biniyorlar.

Baskı için short_open_tag yönergede kullanabilirsiniz.

Bu mevcut değilse, bunu gerçekleştirmek için baskı ya da eko kullanmanız gerekir.

Sen deneyebilirsiniz:

ini_set('short_open_tag', true);

Eğer short_open_tag etkin olduğundan emin misiniz? http://us.php.net/echo

Sen yapabilirsin

[...] ?><input 
    type="text" 
    size="10" 
    value="<?php echo date("Y-m-d", strtotime($rowupd['upcoming_event_featured_date'])) ?>" 
    name="upcoming_event_featured_date" 
    id="keys"/>
<?php [...]

Eğer yoksa short_open_tag PHP yapılandırmada etkin.

Bunu siz kendiniz bulursanız sık sık bu tür Smarty olarak, PHP için bir çiftleşmiş sistem içine bakmak isteyebilirsiniz.