|
|
|
|
<?
$char = "He Bopyu";
$link = "http://www.tibia.com/community/?subtopic=character&name=$char";
$fd = fopen($link, "r");
$text="";
if (!$fd) echo "Сервер временно не доступен.";
else
{
while (!feof ($fd))
{
$text .= fgets($fd, 9000);
}
}
fclose ($fd);
$poslevel = strpos($text, "Level:");
$varlevel = substr($text, $poslevel+15, 3);
echo $varlevel;
echo "<br>";
$posworld = strpos($text, "World:");
$varworld = substr($text, $posworld+15, 8);
echo $varworld;
echo "<br>";
$pos = strpos($text, "Comment:");
$var = substr($text, $pos+17, 8);
echo $var;
?>
|
Почему это чудо выводит мне
4Berylia<
ta name=
Вместо
35<
Aurea</T
56815490 | |
|
|
|
|
|
|
|
для: Бамси
(04.04.2006 в 09:31)
| | Пробелы не допустимы в URL, браузер сам их заменяет на %20, а в скрипте придётся URL формировать самостоятельно. Замените строку
$link = "http://www.tibia.com/community/?subtopic=character&name=$char";
|
на
$link = "http://www.tibia.com/community/?subtopic=character&name=".urlencode($char);
|
| |
|
|
|
|
|
|
|
для: cheops
(04.04.2006 в 12:55)
| | А как мне массив загнать в функцию urlencode?
Пробовал так, и подругому, но ничего не получаеться.
echo "<font size=2>".$worlds[$world_name][$q]." <a target=\"_blank\" href=http://www.tibia.com/community/?subtopic=character&name=".urlencode(.$worlds[$world_name][$q].)">(*)</a></font><br>";
Первый вот массив отображаеться нормально, а тот которые в функии .urlencode пишет ошибку.
И не могли бы заодно обьяснить как Когда надо ставить эти точки ( . ) Я часто замечал что иногда пишут перед функциями а иногда нет, вот хочу спросить когда их нужно ставить и где? | |
|
|
|
|
|
|
|
для: Бамси
(04.04.2006 в 20:09)
| | Точки склеивают друг с другом кусочки строк. Кроме как для этого они не нужны.
Одним из таких кусочков может быть результат вызова функции.
Если значение переменной можно "вклеить" в строку просто написав имя переменной среди строки, то результаты вызова функций так не вклеишь. Приходится для склейки пользоваться точками.
Элемент массива можно вклеить в строку и без точек, но сделать это сложнее, а правильный синтаксис подстановки элемента выглядит неуклюже. Поэтому элементы массива тоже частенько подклеивают к строкам точками.
А теперь исправляйте свой пример :) | |
|
|
|
|
|
|
|
для: Trianon
(04.04.2006 в 20:29)
| | Спасибо :)
echo "<font size=2>".$worlds[$world_name][$q]." <a target=\"_blank\" href=http://www.tibia.com/community/?subtopic=character&name=".urlencode($worlds[$world_name][$q]).">(*)</a></font><br>"; | |
|
|
|
|
|
|
|
для: Бамси
(04.04.2006 в 20:59)
| | Можете сравнить Ваш вариант с моим. Они практически не отличаются.
<?
echo ""
. "<font size=2>"
. $worlds[$world_name][$q]
. " <a target=\"_blank\" href=http://www.tibia.com/community/?subtopic=character&name="
. urlencode($worlds[$world_name][$q])
. ">(*)</a></font><br>";
?>
|
| |
|
|
|
|
|
|
|
для: Trianon
(04.04.2006 в 21:01)
| | {Хм прикольно, теперь буду точками пользоваться вместо 10 строчек с echo ""; | |
|
|
|
|
|
|
|
для: Бамси
(04.04.2006 в 21:05)
| | Вместо десяти строчек уже можно пользоваться html-выводом.
Например вместо
if(....)
{
echo "<tr>";
echo "<td> $pole1 </td>";
echo "<td>.... </td>";
echo "<td>.... </td>";
echo "</tr>";
}
| имеет смысл писать
if(....)
{ ?>
<tr>
<td> <?= $pole1 ?> </td>
<td>.... </td>
<td>.... </td>
</tr>
<?
}
|
| |
|
|
|