php - strpos 命令破坏 php 程序
问题描述
我一直在研究一个 madlibs 程序,它似乎无缘无故地崩溃了。我从 html 表单中获取用户输入。我正在尝试检查用户输入是否有效。为了使数据有效,数据不得包含空格或任何标点符号。我不确定是否应该使用 strpos 命令或 preg_match。无论如何,我能够到达第一个 if 语句,它会中断。我已经使用了这个命令的多种变体,无论我做什么,我的代码似乎都会中断。我要做的就是检查这个合并的字符串是否包含一个字符。看起来很简单,但我似乎找不到问题所在。任何回应将不胜感激。我可以从我的 html 页面发布代码,但问题不在于该代码。
<?php
//Michael Keller
//Project1
//Variables
$stringFirstVerb = $_POST["stringFirstVerb"];
$stringSecondVerb = $_POST["stringSecondVerb"];
$stringThirdVerb = $_POST["stringThirdVerb"];
$stringFirstNoun = $_POST["stringFirstNoun"];
$stringSecondNoun = $_POST["stringSecondNoun"];
$stringThirdNoun = $_POST["stringThirdNoun"];
$stringFirstAdj = $_POST["stringFirstAdj"];
$stringSecondAdj = $_POST["stringSecondAdj"];
$stringThirdAdj = $_POST["stringThirdAdj"];
$stringParagraph = $_POST["stringParagraph"];
$intNounCount = 0;
$intVerbCount= 0;
$intAdjCount = 0;
//check for user input
$stringNewStr = implode("",array($stringFirstVerb,$stringSecondVerb,
$stringThirdVerb,$stringFirstNoun,$stringSecondNoun,$stringThirdNoun,
$stringFirstAdj,$stringSecondAdj,$stringThirdAdj));
var_dump($stringNewStr);
if( strpos($stringNewStr, ' ' ) !== false ){
echo "No spaces allowed in any Verbs, Nouns, or Adj's";
echo "<br>";
echo "<a href="project1.html">Link to previous Page</a>";
}
?>
解决方案
你打电话的方式没有问题strpos()
。你有一个语法错误:
echo "<a href="project1.html">Link to previous Page</a>";
应该:
echo "<a href='project1.html'>Link to previous Page</a>";
希望这可以帮助,
推荐阅读
- c++ - 打印文件时如何格式化文件内容以使文件内容居中显示?
- c++ - SDL_WINDOWEVENT_SIZE_CHANGED 和 SDL_WINDOWEVENT_RESIZED 不起作用?
- python - 来自 s3 存储桶的 Pandas read_pickle
- algorithm - Modelica:将数组返回值分配给标量
- c# - 如何将更新的列表传递给控制器?
- java - Java regex:查找字母数字组合的序列,允许某些符号
- python - Maya python commands to Maya api: modelEditor settings
- c# - Correct way to enable and disable voice recording via Bluetooth headset on Xamarin.Android
- android - Autofill in Android Oreo not working when app handles localization
- java - When I send a socket request to nginx, the request from nginx is not balanced to socket server