所以这是我的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.
我的代码不会更改文本的格式。我尝试输入所有大写字母,它将按原样显示。我错过了什么或做错了什么吗?
输入的文本(如果全部为大写)仍必须在表中显示为驼峰大小写格式,如下所示:
名字:玛丽亚·伊洛娜(表格)
名字:玛丽亚·伊洛娜(在表中) - 这是另一个用于查看数据条目的.php文件
看到您没有发布您的 html 表单或它的使用方式,我将以下内容作为一段成功的代码提交,并对带有表单标签和提交输入isset()
的 POST 数组使用!empty()
。
顺便说一句,函数和变量赋值应该分开使用,而不是在输入/表单元素中使用。
创建一个函数,然后使用参数将其传递到输入中。
<?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
......
在 Stack 上查阅以下内容,这可能被证明是有用的:
- 给定大写名称转换为正确大小写,处理"O'Hara","McDonald"van der Sloot"等
- 数据清理,从 ALLCAPS 转换为标题大小写后
您提到了数据库的使用,但没有发布相关代码,这超出了问题的范围。
澄清 aynber 在评论中的意思:
<?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)) ?>"/>