Запись даты для имени, фамилии и должности должна быть в формате верблюда, даже если пользователь вводит все заглавные буквы
Так что это мой код для first_name. Я понятия не имею, почему это не работает, когда я добавляю запись.
First Name: <input type="text" name="first_name" value="<?php function convertString($first_name){
$first_name=htmlentities(strip_tags($first_name));
$lowercaseFName = strtolower($first_name);
$ucFName = ucwords($lowercaseFName);
return $ucFName;} ?>"/> // I changed it with echo but nothing changed.
Мой код не меняет формат текста. Я попытался ввести все заглавные буквы, и он будет отображаться как есть. Я что-то упускаю или делаю это неправильно?
Введенный текст, если все заглавными, все еще должен отображаться в формате Camel Case в таблице, например так:
Имя: МАРИЯ ИЛОНА (в форме)
Имя: Мария Илона (в таблице) - это еще один.php файл для просмотра записей данных.
2 ответа
Видя, что вы не опубликовали свою HTML-форму или как она используется, я представляю следующее как успешный фрагмент кода и использую !empty()
против массива POST с тегами формы и isset()
для отправки ввода.
Кстати, функции и назначения переменных должны использоваться отдельно, чем во входах / элементах формы.
Создайте функцию, затем передайте ее внутри ввода с параметром.
<?php
function convertString($first_name){
$first_name=htmlentities(strip_tags($first_name));
$lowercaseFName = strtolower($first_name);
$ucFName = ucwords($lowercaseFName);
return $ucFName;
}
if(isset($_POST['submit'])){
if(!empty($_POST['first_name'])){
$first_name = $_POST['first_name'];
}
}
// here initialize $first_name to something meaningful
?>
<form method="post">
First Name: <input type="text" name="first_name" value="<?php echo(convertString($first_name)) ?>"/>
<input type="submit" name="submit" value="Submit">
</form>
Примечания:
Что касается того, о чем говорил Марк McDonald's -> mcdonald's -> Mcdonald's
и мой MacDonald
в комментариях...
Обратитесь к следующему здесь на стеке, который может оказаться полезным:
- Заданные имена в верхнем регистре преобразуются в Собственный регистр, обрабатывая "О'Хара", "Макдональд", "Ван дер Слот" и т. Д.
- Очистка данных, последующее преобразование из ALLCAPS в Case Title
Вы упоминаете об использовании базы данных, но не разместили относительный код и выходили бы за рамки вопроса.
Чтобы уточнить, что айнбер имел в виду в комментариях:
<?php
function convertString($first_name){
$first_name=htmlentities(strip_tags($first_name));
$lowercaseFName = strtolower($first_name);
$ucFName = ucwords($lowercaseFName);
return $ucFName;
}
// here initialize $first_name to something meaningful
?>
First Name: <input type="text" name="first_name" value="<?php echo(convertString($first_name)) ?>"/>