Переменные как адрес в ссылке mailto

#php #html #mysql

#php #HTML #mysql

Вопрос:

Я хотел бы использовать значение электронной почты из моей базы данных, но при печати оно не использует значение электронной почты или что-либо после него. Я где-то пропустил » или»? Он работает в других местах кода, но с этой ссылкой это не сработает «.

 echo '<div align="center"><a href="mailto:"' . $row["email"]. '"amp;subject=Subjectamp;body=Body"><img src="email.png"</a></div>';
 

Ссылка на результат: mailto:

Заранее спасибо!

Ответ №1:

Вы закрыли href и вот почему он закончился на mailto:

Это должно быть

 echo '<div align="center"><a href="mailto:'. $row["email"] .'amp;subject=Subjectamp;body=Body"><img src="email.png"></a></div>';

 

Комментарии:

1. Потрясающе, это добавило электронное письмо. Однако тема и тело не были включены. Теперь ссылка: mailto: {адрес электронной почты}

2. Я заметил больше ошибок, попробуйте сейчас

3. Это сработало отлично! Большое вам спасибо!

4. С удовольствием, если ваша проблема решена, пожалуйста, примите мой ответ

5. @JanneFiH, ваш тег <img также не закрыт, поэтому он никогда не покажет изображение. Ознакомьтесь с моим ответом, чтобы узнать больше … отшлифованное решение, полная защита от спама.

Ответ №2:

Ваши цитаты смещены.

Используйте это:

 // Greatly hinder spammers from ripping the email from your site.
// Converts "hi@hi.com" to "hiamp;commat;hiamp;period;com" but still works 100% as good for end-user.
$escapedEmail = htmlentities($row['email'], ENT_HTML5);

echo <<<HTML
    <div align="center"><a href="mailto:{$escapedEmail}amp;subject=Subjectamp;body=Body"><img src="email.png" /></a></div>
HTML;
 

Heredocs, безусловно, лучший способ справиться с этим, так как вам не нужно беспокоиться о вложенных между собой одинарных / двойных кавычках, множестве «.» И т. Д., Которые являются уродливыми AF и, как правило, создают МНОЖЕСТВО непреднамеренных ошибок, поскольку ваш код просто кусает вас.

Другой способ сделать это — использовать printf() , но он не такой производительный и немного сложнее для чтения:

 printf('<div align="center"><a href="mailto:%samp;subject=Subjectamp;body=Body"><img src="email.png" /></a></div>', $escapedEmail);