2012-05-03 2 views
0

Почему это не удается? Он работает, когда onerror= не является переменной, а просто ручной строкой.

<?php 
$error = "onerror='this.src = \'http://userlogos.org/files/logos/pek/stackoverflow2.png\'';"; 
for ($i = 1; $i <= 10; $i++) { 
    echo "<img src='http://services.runescape.com/m=itemdb_rs/3716_obj_sprite.gif?id=" . $i . "' alt='ID " . $i . "' title='ID " . $i . "'" . $error . "/>"; 
} 
?> 
+2

"Это не помогает" слишком расплывчатое описание. Расскажите, пожалуйста, что происходит. –

+0

-check 'и " -what это связано с Java? Retag. – 11684

+0

java и javascript не то же самое. – 11684

ответ

2

Попробуйте это:

<?php 
$error = " onerror='this.src =\"http://userlogos.org/files/logos/pek/stackoverflow2.png\";'"; 
for ($i = 1; $i <= 10; $i++) { 
    echo "<img src='http://services.runescape.com/m=itemdb_rs/3716_obj_sprite.gif?id=" . $i . "' alt='ID " . $i . "' title='ID " . $i . "'" . $error . "/>"; 
} 
?> 
+0

Я должен использовать двойные кавычки в HTML и один в PHP/JS, потому что это самый общий способ. –

+0

@WouterJ вы можете использовать тот или иной, не имеет значения. И оба действительны. – stewe

-1

Слишком много котировок. Я бы переписать следующим образом, то вы можете обнаружить ошибки проще:

<?php 
$error = "onerror='this.src = \'http://userlogos.org/files/logos/pek/stackoverflow2.png\'';"; 
for ($i = 1; $i <= 10; $i++) { 
    echo "<img src='http://services.runescape.com/m=itemdb_rs/3716_obj_sprite.gif?id=$i' alt='ID $i' title='ID $i' $error />"; 
} 
?> 

Не уверен, что это именно то, что вы хотите, но это проще отлаживать.

+0

не будет работать. Теперь вы получаете' onerror =' this.src = 'url''' в приведенный HTML и который не может ... –

Смежные вопросы