2010-03-29 3 views
0

Там проблема в этом коде я не могу обнаружитьГде проблема в этом PHP-коде?

<?php echo "<a href ='$rows['Link']'> .$rows['UploadName']</a> "; ?> 

ли вы у вас есть решение ???

спасибо.

+1

Что происходит? Откуда вы знаете, что есть проблема? – Tom

+7

Какое поведение говорит о наличии проблемы? –

+1

Если вы получили сообщение об ошибке, сообщите, какая ошибка. В противном случае вы можете только догадываться (да, сообщения об ошибках имеют причину). –

ответ

6

Я предполагаю, что ваша проблема заключается в том, что она не выписывает данные в $rows['Link'] ... если это так, то ваше решение состоит в том, чтобы изменить его на {$rows['Link']} ... на самом деле, вы, вероятно, захотите изменить оба, так как похоже, что вы начали выполнять конкатенацию строк, а затем переключались на полпути.

Итак:

<?php echo "<a href ='$rows['Link']'> .$rows['UploadName']</a> "; ?> 

становится:

<?php echo "<a href ='{$rows['Link']}'>{$rows['UploadName']}</a> "; ?> 

видим: PHP Manual on Variable Parsing in strings

+0

Ох - хорошо.Ха-ха, я не знал, что ты можешь это сделать. +1 - это, вероятно, сэкономит мне много времени. – Cam

+0

не забудьте дезинфицировать свои переменные – knittl

+0

@knittl - абсолютно! На самом деле, они должны быть дезинфицированы ** до **, они добираются до этого момента. (Вот почему я его оставил - я предполагаю, что данные, которые он использует, уже были дезинфицированы для вывода html.) –

0

Там проблема в разборе переменных в строке. Используйте завиток фигурных скобок:

<?php echo "<a href ='{$rows['Link']}'> .{$rows['UploadName']}</a> "; ?> 

Посмотрите на this php.net page под «переменным разбором».

2

Оно должно быть:

<?php echo "<a href ='{$rows['Link']}'>{$rows['UploadName']}</a>"; ?> 

Или:

<?php echo "<a href ='{$rows['Link']}'>" . $rows['UploadName'] . "</a>"; ?> 
+1

Если вы начнете с этих двух, еще есть еще две возможности;) –

+0

Да, я имею в виду нет сомнения. Эй, мы могли бы пойти с маршрутом HEREDOC и сказать ... echo <<< EOF .... EOF; Но вы правы: «Есть много способов сделать это». –

0

Больше альтернатив:

<?php echo '<a href ="' . $rows['Link'] . '">' . $rows['UploadName'] . '</a>'; ?>

или

<?=('<a href ="' . $rows['Link'] . '">' . $rows['UploadName'] . '</a>')?>

+0

Спасибо всем Теперь код работает правильно – sandy

0

Другая альтернатива (что я предпочитаю, учитывая, что я знаю, что и 'Link', и 'UploadName' являются действительными индексами $row.

<a href="<?=$rows['Link']?>"><?=$rows['UploadName']?></a> 

Я не уверен, что это делает для удобочитаемости для большинства людей, но на цветовой кодировкой Иды, она стремится помочь, потому что HTML не только видел, как один гигантский уродливый одноцветная строки.

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