2016-02-28 2 views
-3

В настоящее время я занимаюсь разработкой веб-лидеров для сервера Minecraft, и у меня возникла проблема. Вот мой код, который работает:Вставка html в php с использованием echo

<?php 
     while($row = mysql_fetch_assoc($result)){ 
     echo 
     "<tr> 
      <td><a href='http://cravatar.eu/avatar/$row[UUID]/64.png'>$row[UUID]</a></td> 
      <td>{$row["KILLS"]}</td> 
      <td>{$row["DEATHS"]}</td> 
     </tr>\n"; 
     } 
    ?> 

Так что я пытаюсь сделать это вместо того, чтобы интерактивная UUID сделать реальное изображение. Для этого это должно быть: (http://cravatar.eu/avatar/uuid/64.png) Я попытался использовать тег img, но у меня возникла проблема. Я чрезвычайно новичок в php, поэтому, если вы можете «ослепить» свой ответ, это было бы здорово.

EDIT: Я получил его полурабочее! Я использовал ($ uuid = $ row ['UUID'];), затем добавил переменную в ссылку. Спасибо всем, кто предложил материал!

+0

Используйте синтаксис '{$ row ['UUID'}}' в первом '', как вы делаете в последних двух. – Kenney

+0

@iVersion, у вас есть закрывающий тег на img? Это недействительно HTML, как написано в комментарии. – Devon

ответ

-1

После исправления некоторых ошибок, у меня есть два пути, которые я хотел бы предложить вам попробовать

1-й путь является

<?php 

     while($row = mysql_fetch_assoc($result)){ 
     echo 
     '<tr> 
      <td><img src="http://cravatar.eu/avatar/64.png"/></td> 
      <td>'.$row["KILLS"].'</td> 
      <td>'.$row["DEATHS"].'</td> 
     </tr>\n;'; 
     } 
?> 

И второй путь

<?php do { ?> 


<tr> 
    <td><img src="http://cravatar.eu/avatar/64.png"/><?php //echo $row['UUID']; ?></td> 
       <td><?php echo $row["KILLS"]; ?></td> 
       <td><?php echo $row["DEATHS"]; ?></td> 
    </tr> 

<?php } while($row = mysql_fetch_assoc($result)) ?> 

Надеюсь, что это поможет

+1

Не совсем ответ на проблему, просто другой способ сделать как цикл, так и выход.Вероятно, просто собирается запутать их, плюс у вас есть ошибка. – Devon

+0

Я отредактировал ответ, и теперь он отобразит изображение вместо ссылки @Devon –

+0

1-й метод работает только мне нужен аватар для обновления на основе их статистики. Второй метод также работает, но он дублирует таблицу (https://gyazo.com/f2f7d95bd5259c844fb0981a5a0fd242) @OmariOmosa – iVersion

-2

Это должно быть так:

<?php 
     while ($row = mysql_fetch_assoc($result)) { 
     echo 
     '<tr> 
      <td><img src="http://cravatar.eu/avatar/$row[UUID]/64.png"></td> 
      <td>{$row["KILLS"]}</td> 
      <td>{$row["DEATHS"]}</td> 
     </tr>' . "\n"; 
    } 
?> 

Вы должны попытаться использовать одиночные кавычки (') вместо двойных кавычек ("), потому что PHP обрабатывает строки в одинарных кавычках быстрее, чем в двойных кавычках, но вы не можете использовать новый символ строки (\ n) в одинарных кавычках (только в двойном виде). Обычно я использую конкатенацию ($x = 'some large string' . "\n")
Кроме того, вы должны использовать двойные кавычки в атрибутах HTML.
<a href='http://cravatar.eu/avatar/$row[UUID]/64.png'>$row[UUID]</a> - НЕПРАВИЛЬНО
<a href="http://cravatar.eu/avatar/$row[UUID]/64.png">$row[UUID]</a> - ПРАВИЛЬНО
Если вставить HTML код в двойных кавычках (в PHP файл), вы можете экранировать кавычки атрибутов путем размещения \ характера ($x = "<a href=\"http://cravatar.eu/avatar/$row[UUID]/64.png\">$row[UUID]</a>";)
Кроме того, используйте mysqli_ префикс вместо старой mysql_ (mysqli_fetch_assoc($result)) Вы можете найти эти инструкции очень полезны: http://www.tutorialspoint.com/html/html_img_tag.htm http://php.net/manual/en/language.types.string.php

+0

У вас есть хорошие очки, но живой вид довольно странный. (https://gyazo.com/0d65998f768de73966cea9b28a21b3ca) @GoltikRee – iVersion

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