JavaScript — HTML, PHP. Изменить текст в текстовой области, причина установленного переключателя

Здравствуйте, я хочу изменить текст в textarea на кнопку (изменить) переключатель. У меня есть собственная база данных clanok (статья), где атрибутами являются надпис (заголовок) и текст. Благодарю.

$result = mysqli_query($con,"SELECT * FROM clanok ORDER BY nadpis");
while($row = mysqli_fetch_array($result))
{
?>
<input type="radio" name="nadpis" value="<?php echo $row['nadpis']; ?> ">
<?php
echo $row['nadpis'];
echo "<br>";
}
?>
<textarea name="text" cols="30" rows="5" >
<?php
echo $row['text'];
?>
</textarea>
<br>
<input type="submit"  value="Odoslať článok">

0

Решение

Прежде всего, после завершения загрузки страницы вы не можете получить новый материал из базы данных и показать его на своей странице (если вы не используете ajax), так что это означает, что ВСЕ ваши строки текста должны быть загружены и сохранены где-то заранее.

Или вы можете использовать ajax для получения нового текста из базы данных каждый раз. Оба из этих решений дадут 2 разных типа нагрузки на ваши ресурсы.

Я дам вам решение без AJAX, но если вы хотите услышать AJAX, скажите мне, и я добавлю его и здесь. Если вы хотите, чтобы часть вашего сайта изменялась при нажатии, вы можете использовать javascript для этого. Существует также решение только для CSS, основанное на текущем состоянии (выбрано или не выбрано) переключателей, но этот javascript было легче написать для меня. … так что иди. Решение без ajax, с javascript.

<?php

$radio_button_div_text = ""; //makes a variable to store all the text to be displayed in section 1
$textarea_div_text = ""; //makes a variable to store all the text to be displayed in section 1
$list_of_all_ids_for_js_function = ""; //makes a variable to store something that will later be part of the javascript function

$result = mysqli_query($con,"SELECT * FROM clanok ORDER BY nadpis");
while($row = mysqli_fetch_array($result)) { //while there are rows to get...
//put the different buttons and textareas into two separate variables
$radio_button_div_text += 'input type="radio" name="nadpis" value="'.$row['nadpis'].'" onclick="show_only_one_textarea('.$row['nadpis'].')">';
$radio_button_div_text += $row['nadpis'];
$radio_button_div_text += '<br>';
$textarea_div_text += '<textarea id='.$row['nadpis'].' name="text" cols="30" rows="5" style="display:none;">';
$textarea_div_text += $row['text'];
$textarea_div_text += '</textarea>';
$list_of_all_ids_for_js_function += 'document.getElementById(\''.$row['nadpis'].'\').style.display="none";'    }

//now, after you got all the info sorted, show the two areas!
echo $radio_button_div_text;
echo '<br><br>';
echo $textarea_div_text;

?>

<!--now, what you need, is some javascript to make some textareas visible when you click on the corresponding radio button -->
<script>
function show_only_one_textarea(area_id) {
<?php echo $list_of_all_ids_for_js_function; ?>
document.getElementById(area_id).style.display="block";    }
</script>

<!--now, everything will display properly and the javascript will work. here is your submit button -->
<br>
<input type="submit"  value="Odoslať článok">

Извините, я не тестировал этот код на своем собственном веб-сайте … возможно, в нем есть куча ошибок с кавычками «». Но если вы внимательно прочитаете его, вы поймете, что такое пытаясь сделать там. Знаете ли вы что-нибудь много о javascript? Не стесняйтесь спрашивать меня больше, если вам нужны разъяснения!

Удачи.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]