1

いくつかの変数に従って背景画像を変更するために、phpをhtmlに含めました。img-set()したがって、bodyタグで関数を呼び出しています。関数は正常に動作しています。しかし、関数が実行された後、htmlコードは壊れます。理解できない構文上の問題だと思います。

<body style="background:url(images/<?php $obj->set_img();?>); -webkit-background-size: cover;-moz-background-size: cover;-o-background-size: cover;background-size: cover;">

Webブラウザのソースコードの出力は次のようになります。

<body style="background:url(images/music7.jpg

画像名を表示した後、このブレーク。なぜそうなのか ??

これがset_img()関数です

function set_img()
{
$ctr = date("d");
$arr7 = array("7","18","29");
$status = 0;

foreach($arr7 as $value){
if($ctr == $value){
echo "music7.jpg";
$status = 7;
}}
if(!$status) echo "music1.jpg";
}
4

6 に答える 6

3

使用し<?php set_img();?>ない<?php $obj->set_img();?>

于 2012-10-19T01:43:49.580 に答える
1

set_img()関数に問題があり、ページの残りの部分のレンダリングが停止している可能性があります。画像を出力した後、コードを見てください。エラーが関数によるものかどうかを確認する簡単なテストは、そのphpブロックを削除して、ページが正常にレンダリングされるかどうかを確認することです。

于 2012-10-18T14:49:48.360 に答える
1
<body style="background:url(images/<?php set_img();?>); -webkit-background-size: cover;-moz-background-size: cover;-o-background-size: cover;background-size: cover;">
于 2012-10-19T00:01:50.713 に答える
0

レンダリングされていない例外もあると思います。

しかし、set_img関数を見ると、どのように例外がスローされるのか想像できません。$ objが適切なクラスにインスタンス化されていない可能性がありますか?

于 2012-10-18T21:19:45.440 に答える
0

サイレントPHPエラーのように聞こえます。検出が難しい場合があります。でApacheエラーログを確認してみてください。PHP/var/log/Apache2が破損する原因となっているエラーが示されているはずです。

于 2012-12-12T16:55:34.367 に答える
-1

URLの前後に引用符がない可能性があると思います。試す:

<body style="background:url('imges/music7.jpg')">
于 2012-10-18T14:51:51.267 に答える