首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PHP:如何确保输入到表单中的句子至少有20个字符,最后9个字符被拉到新的页面上显示?

在PHP中,可以使用以下步骤来确保输入到表单中的句子至少有20个字符,并将最后9个字符拉到新的页面上显示:

  1. 首先,需要在表单中添加一个文本框,用于接收用户输入的句子。
  2. 在提交表单时,可以使用PHP的表单处理功能来验证输入的句子是否满足要求。
  3. 在PHP中,可以使用strlen()函数来获取输入句子的长度。如果长度小于20个字符,则需要进行处理。
  4. 可以使用substr()函数来截取输入句子的最后9个字符。
  5. 将截取的最后9个字符保存到一个变量中,以便在新的页面上显示。
  6. 可以使用header()函数将用户重定向到新的页面,并将保存的最后9个字符作为参数传递给新页面。
  7. 在新的页面上,可以使用$_GET或$_POST超全局变量来获取传递的参数,并将其显示出来。

以下是一个示例代码:

代码语言:txt
复制
<?php
if(isset($_POST['submit'])){
    $sentence = $_POST['sentence'];
    if(strlen($sentence) < 20){
        $last_chars = substr($sentence, -9);
        header("Location: new_page.php?last_chars=$last_chars");
        exit();
    }
}
?>

<form method="POST" action="">
    <label for="sentence">请输入句子:</label>
    <input type="text" name="sentence" id="sentence" required>
    <input type="submit" name="submit" value="提交">
</form>

在新的页面new_page.php中,可以使用以下代码来显示最后9个字符:

代码语言:txt
复制
<?php
if(isset($_GET['last_chars'])){
    $last_chars = $_GET['last_chars'];
    echo "最后9个字符是:$last_chars";
}
?>

这样,当用户输入的句子长度小于20个字符时,会自动跳转到新的页面,并显示最后9个字符。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

独家 | 手把手教你如何用Python从PDF文件中导出数据(附链接)

PDFMiner包提供了一些不同方法使你能够做到这一点。我们先来探讨一些编程方法。让我们试着从一个国税局W9表单读取所有的文本。...对于这个例子,我们仅仅是提取了每一前100个字符并将其存入一个XML子元素(SubElement)。接下来一段代码可以简化成仅是写出XML文件。...Pages键对应一个空表单。接着,我们循环遍历PDF每一并且提取每一前100个字符。然后创建一个字典变量以页号作为键100个字符作为值并将其添加到顶层表单。...这里唯一不同就是我们将前100个字符分割成了单个词。这将允许我们拥有一些真实数据来加入CSV。如果不这样做,那么每一行将只会有一个元素在其中,那就不算一个真正CSV文件了。...以下是你如何在没有Python情况下使用它: ? 请确保images文件夹(或你想新建任何输出文件夹)已经创建,因为pdfimages不会为你创建它。

5.4K30

Nature正刊解读 | 基于侵入式脑电想象手写英文字母实现与外界交流

在随后实时测试,每一天收集额外训练数据,在评估前重新校准RNN,最后一天总共得到572个训练句子(7.6小时,31472个字符)。...首先,对单个字母数据进行时间扭曲和平均,为每个字符创建神经活动时空模板。这些模板用于初始化用于句子标注隐马尔可夫模型(HMMs)。标记后,将观察数据切分并重新排列成字符序列,形成合成句。...b、 添加到特征均值的人工噪声(随机偏移和基线发射率缓慢变化)极大地提高了RNN泛化到会话后期出现数据块能力,但无助于RNN泛化其已经训练过数据块试验。...最后,为了探索可能解码性能限制,我们离线训练了一个RNN,使用所有可用句子以非因果方式处理整个句子(与其他BCI研究相似[16,17])。...每个圆圈代表单个字符神经活动模式,每个x符号在稍后一天显示相同字符(线连接匹配字符)。左,两个疗程之间只有两天(从第2天第0天);对,两个疗程间隔11天(第2天9天)。

1.7K20

三分钟让你了解什么是Web开发?

JS可以对页面上所有现有事件作出反应。 JS可以在页面创建事件,然后对所有这些事件作出反应。...简单地说,这就是数据如何推送到服务器,然后最终存储在一个文件或数据库。 注意:假设我们想在提交之前添加验证——例如,产品应该包含至少5个字符,或者SKU字段不应该是空。...通过认证用户创建博客 为此,我们需要一个带有两个输入字段(标题、内容)HTML表单,用户可以通过该表单创建一个博客帖子。...如果数据是有效,那么只有表单数据持久化tbl_blog_post,或者它将消息发送回客户端,以输入丢失信息,并且进程继续。...与CSS和JS一起将数据插入HTML模板。 以上所有代码都可以写在一个文件。这是早期做法,但是发展联盟意识这不是最优。要添加任何特性,需要更改整个代码,在多开发环境工作并不容易。

5.8K30

Kali Linux Web渗透测试手册(第二版) - 6.5 - 确认并利用SQL盲注漏洞

这个表单和上面的sql注入表单一模一样,我们输入1,可以查看id为1用户信息 2. 现在我们输入 1' 看看会不会像sql注入一样报错 ? 我们没有收到错误消息,也没收到任何结果返回 3....可以发现应用给出了id为1结果。这说明该表单存在sql盲注漏洞,我们可以输入猜测语句函数来观察应用返回结果,通过这个方法可以一步一步猜解出想知道内容。 6....20. 下面继续猜解后面的字符。在结果,你可能会发现%结果总为ture,这是因为%是通配符,它可以和任意一个字符匹配到。 ?...最后我们测试出来结果是dvwa@%,最后一个%匹配是空字符,所以用户名是dvwa@ 21....结果显示我们找到了正确用户名! 原理剖析 在服务器端,sql注入和sql盲注是同类型漏洞,都是因为对输入内容不检测或检查不充分导致脏数据进入了数据库

54720

【前端】Web前端学习笔记【1】

要匹配变长字符,在正则表达式,用*表示任意个字符(包括0个),用+表示至少一个字符,用?...允许变量名; [a-zA-Z\_\][0-9a-zA-Z\_\]{0, 19}更精确地限制了变量长度是1-20个字符(前面1个字符+后面最多19个字符)。...属性 值 描述 for id 规定 label 绑定哪个表单元素。 form formid 规定 label 字段所属一个或多个表单。...它们参数是计时器名称。调用timeEnd方法之后,console窗口会显示“计时器名称: 所耗费时间”。...; }); 与DOM方法不同是,这些事件处理程序不是以添加它们顺序执行,而是以相反顺序触发。单击这个例子按钮,首先看到是“Hello World!”,然后才是“Clicked”。

34390

Kali Linux Web渗透测试手册(第二版) - 6.5 - 确认并利用SQL盲注漏洞

这个表单和上面的sql注入表单一模一样,我们输入1,可以查看id为1用户信息 2. 现在我们输入 1' 看看会不会像sql注入一样报错 我们没有收到错误消息,也没收到任何结果返回 3....我们再输入 1'' 看一下: 结果显示了id为1用户信息,这说明前面测试1’是web应用已经预料到错误,这里很可能会有sql盲注漏洞,我们来继续猜测 4....这说明该表单存在sql盲注漏洞,我们可以输入猜测语句函数来观察应用返回结果,通过这个方法可以一步一步猜解出想知道内容。 6....可以从结果中看到第二个字符是v 20. 下面继续猜解后面的字符。在结果,你可能会发现%结果总为ture,这是因为%是通配符,它可以和任意一个字符匹配到。...最后我们测试出来结果是dvwa@%,最后一个%匹配是空字符,所以用户名是dvwa@ 21.

55920

HTML 交互式表单验证

在 HTML 创建表单总是有点复杂。你首先得将 HTML 标记编写正确,然后需要确保每一个表单项在提交之前都有一个可用值,最后还需要在有问题时用提醒来告知用户。   ...验证属性   下面的属性可以用来在表单控件描述约束: required: 告诉用户必须输入一个值。...pattern=“[a-z]”: 告诉用户必须输入一个可以匹配给定 JavaScript 正则表达式值。 minlength=x: 告诉用户必须输入一个至少有 x 个字符值。...此外 checkValidity(), reportValidity() 也会将输入焦点放到第一个检查出违背了约束元素上,并且在其旁边显示一个气泡消息来对问题进行描述。...input.setCustomValidity(''); } }  验证消息气泡提示   在进行交互式表单验证时候, 一个针对问题进行说明气泡提示会显示在第一个拥有验证违反约束数据表单控件旁边

2.2K30

正则表达式

语法简介 锚点 "^“匹配输入字符串开头位置,”$"表示匹配输入字符串结尾字符 限定符 要匹配变长字符,在正则表达式,用*表示任意个字符(包括 0 个),用+表示至少一个字符,用?...| 指明两项之间一个选择 [ 标记一个括号表达式开始,满足括号内任意一个字符即可完成提前 _ 匹配除\n以外任意字符 要做更精确地匹配,可以用[]表示范围,比如: [0-9a-zA-Z...1-20 个字符(前面 1 个字符 + 后面最多 19 个字符)。...否则,诸如 “is issued” 或 “this is” 之类词组将不能正确地此表达式识别。 正则表达式后面的全局标记 g 指定将该表达式应用到输入字符串能够查找到尽可能多匹配。...最后,第四个括号子表达式捕获 Web 地址指定路径和 / 或信息。该子表达式能匹配不包括 # 或空格字符任何字符序列。

70830

33关Python游戏,你能闯第几关?

23i 1 24t 1 25y 1 可以看到出现次数最少就是最后个字符,合起来是「equality」,替换 url 字符就闯过过了第 2 关进入下一关继续挑战。...后面每一关都需要用到相关 Python 技巧解决,比如第 4 关: ? 这一关作者弄了个小恶作剧,需要手动输入数值 url 然后回车,你以为这样就完了么?...思路很简单,把每次网页数值提取出来替换成 url 再请求网页,循环下去,代码实现如下: 1import requests 2import re 3import os 4 5# 首页url...url为:%s' % nexturl) 19 break 20 21 # 获取下一url 22 nexturl = url + str(nextid) 23 print...可以看到,最终循环了 85 次找到了最后一个数字16044,输入 url 中就闯关成功。 33 关既有趣又能锻炼使用 Python 解决问题技巧,感兴趣的话去玩玩看。

98940

从零实现一个http服务器

,这不意味着传递多个POST变量时必须使用&符号分割,只不过这里是浏览器html表单输入用户名和密码文本框是html表单一种)分割多个变量采用默认方式而已。...不知道你注意没有,上面的POST数据放在http包体,服务器如何解析呢?可能你没明白我意思,看下图: ?...; 52 //chunk至少有个字符串:GET+url+HTTP版本号 53 if (part.size() < 2) 54 { 55 conn->forceClose...; 58 //chunk至少有个字符串:GET+url+HTTP版本号 59 if (part.size() < 2) 60 { 61 conn->forceClose...这又涉及服务器定时器如何设计了,关于这部分请参考我写其他文章。 限于作者经验水平有限,文中难免有错乱之处,欢迎拍砖。

1.7K20

第109天:Ajax请求GET和POST区别

一、Ajax请求GET和POST区别   1.使用Get请求时,参数在URL显示,而使用Post方式,则不会显示出来   2.使用Get请求发送数据量小,Post请求发送数据量大   3.get请求需注意缓存问题...二、使用注意事项   1、使用get方式需要注意:        对于get请求(或凡涉及url传递参数),传递参数都要先经encodeURIComponent方法处理.例:var url =...get,对于get请求(或凡涉及url传递参数),传递参数都要先经encodeURIComponent方法处理.如果没有用encodeURIComponent处理的话,也会产生乱码....page=1,表示获取第一数据 Post请求目的是向服务器发送一些参数,例如form内容.   与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。   ...2、请求结果无持续性副作用。     3、收集数据及HTML表单输入字段名称总长不超过1024个字符。 五、案例  1、HTML代码(原生Ajax代码) 1 <!

1.6K20

正则表达式特殊字符一览

例如:/(foo)/匹配和记录”foo bar.”’foo’。匹配子串能结果数组素[1], …, [n] 返 回,或RegExp对象属性1, …, 9返回。...字符cX 意义:这里X是一个控制字符。匹配一个字符控制字符。 例如:/cM/匹配一个字符control-M。 字符d 意义:匹配一个数字,等价于[0-9]。...例如:/W/或者/[^$A-Za-z0-9_]/匹配”50%.”’%’。 字符n 意义:这里n是一个正整数。匹配一个正则表达式最后一个子串n值(计数左圆括号)。...5、要是有以评论或读者意见形式取得肯定性反馈,可考虑把它包括在主页之内——也许在开头某个地方,或者作为荣誉一个连接。如果做得恰到好处,可以鼓励访问者并使他们放心。...努力确保读者浏览长文件时浏览器滚动条小移动不会在页面上产生大跳跃。作为一条经验规则,按一次滚动条页面移动范围要少于一,这样就还看得见上一个窗口部分内容。

4.4K20

【安全系列】XSS攻击与防御

XSS,XSS是一种在web应用计算机安全漏洞,它允许恶意web用户将代码植入提供其他用户使用页面。    ...【案例一】  http://www.fool.com/xss/reflection.php代码如下: reflection1.png 输入X值未经任何过滤就直接输出,可以提交:http://www.fool.com...【案例二】 http://www.fool.com/xss/reflection.php代码如下: reflection2.png 输入X值作为响应头部Location字段值输出,意味着会发生跳转...【案例】 留言板表单表单域:  正常操作:     用户是提交相应留言信息;将数据存储数据库...要在HTML显示()这个字符,我们就必须使用实体字符。      html实体存在是导致XSS漏洞主要原因之一。

1.3K00

【Laravel系统3.3】控制器与表单验证

,因为在这个控制器方法我们什么都没有做,也没有任何返回,所以页面上没有任何显示。...控制器调用 对于路由控制器调用,还记得上篇文章中学习过 laravel/framework/src/Illuminate/Routing/Route.php 这个文件 run() 方法吗?...首先我们需要定义一个页面,这个页面用于提交表单,只需要简单定义一个模板就可以。...如果没有这个 _token 的话,那么表单提交之后就会报 419 错误。 继续写我们这个 store 接收页面。来看看我们如何验证这个表单里面提交数据信息。...store'); 接下来就是去测试一下,在表单页面,我们什么都不填,直接提交,就可以看到页面上输出了如下错误提示信息。

8.7K20

使用原生 JavaScript 手写一个高效表单验证系统

项目需求 我们需要实现一个注册表单,其中包括以下几个字段: 用户名 邮箱 密码 确认密码 表单需要进行以下验证: 所有字段都是必填项。 用户名长度应在315个字符之间。...密码长度应在625个字符之间。 邮箱格式应有效。 密码和确认密码必须匹配。...表单样式:定义表单容器、标题、表单控件和按钮样式。 表单验证样式:使用CSS类显示输入成功和错误状态。...显示错误信息:showError函数用于显示错误信息,改变表单控件样式并显示具体错误信息。 显示成功信息:showSuccess函数用于显示成功信息,改变表单控件样式为成功状态。...事件监听:为表单添加提交事件监听器 知识点总结 表单验证:了解如何使用JavaScript进行表单验证,确保用户输入数据是有效。 正则表达式:学习如何使用正则表达式验证邮箱格式。

12910

angularjs输入验证

虽然我们不能仅靠客户端验证来保持我们Web应用程序安全性,但他们提供了良好即时反馈表单上。 要使用表单验证,我们首先必须确保 form 标签有一个 name 属性,像上面的例子一样。明白了吗?...{number}个字符,使用AngularJS指令 ng-maxlength=“{number}” : 正则匹配 要确保输入匹配一个正则表达式...这些验证分别是:我们必须有一个长度为3个或更多字符名字。并且最大长度限制为20个字符(21或更多个字符将是无效)。最后,我们设置名称应该是必填。...点击提交后显示验证信息 要在用户试图提交表单显示验证,你可以通过在scope设置一个’submitted’值,并检查该值来控制显示错误。...当时去焦点时验证错误 如果你想保留错误验证实时性,那么可以在用户离开该输入框时显示错误信息。要做到这一点,我们可以添加一个指令,将添加一个变量。

1.2K30

​一个超有意思 Python 综合能力测试网站

23i 1 24t 1 25y 1 可以看到出现次数最少就是最后个字符,合起来是「equality」,替换 url 字符就闯过过了第 2 关进入下一关继续挑战。...后面每一关都需要用到相关 Python 技巧解决,比如第 4 关: ? mark 这一关作者弄了个小恶作剧,需要手动输入数值 url 然后回车,你以为这样就完了么?...思路很简单,把每次网页数值提取出来替换成 url 再请求网页,循环下去,代码实现如下: 1import requests 2import re 3import os 4 5# 首页url...url为:%s' % nexturl) 19 break 20 21 # 获取下一url 22 nexturl = url + str(nextid) 23 print...可以看到,最终循环了 85 次找到了最后一个数字16044,输入 url 中就闯关成功。 33 关既有趣又能锻炼使用 Python 解决问题技巧,感兴趣的话去玩玩看。

1.1K20

vim配置即.vimrc文件配置及vim操作技巧

替换某些行内容:      :10,20s/from/to/g :10,20s/from/to/g   :  对第10行20内容进行替换。...'{a-z}: 移动到标记行行首。 `{0-9}:回到上[2-10]次关闭vim时最后离开位置。 ``: 移动到上次编辑位置。''也可以,不过``精确列,而''精确行 。...:tabe, tabnew -- 如果加文件名,就在标签打开这个文件, 否则打开一个空缓冲区。 ^w gf -- 在标签里打开光标下路径指定文件。 :tabn -- 切换到下一个标签。...输入 / 然后紧随一个字符串是则是在当前所编辑文档向后查找该字符串。输入问号 ? 然后紧随一个字符串是则是在当前所编辑文档向前查找该字符串。...在一行内替换头一个字符串 old 为字符串 new,请输入  :s/old/new在一行内替换所有的字符串 old 为字符串 new,请输入  :s/old/new/g在两行内替换所有的字符串

3.9K10

15个常见网站SEO问题及解决方案

这似乎是一笔数目可观金钱,但考虑企业主日常需求——从“留住当前客户”“在本地目录展现更多企业信息”,这些费用是合理。...(标题标签)显示空间而言,title标签长度70-71个字符似乎是最佳位置——从50-60个字符开始吧。...问题描述 你联系方式是否存在问题?用户是否希望填写? 据formisimo研究显示,在150万网络用户,只有49%的人在看到表单时填写了表单。...解决方案 你需要控制web页面title和meta descriptions代码长度,以确保搜索引擎不需要查找剩余句子,用户不会去点击其他链接。 ? XML站点地图中错误 ?...最后想说的话 ? 希望你现在对困扰网站SEO技术问题有了更好理解,并知道该如何解决问题。为了避免失去客户或造成业务损失,一定要仔细检查文中所述每一个问题。

1.6K30

周末在学习正则,学习过程中发现这 6 个方便正则表达式

在本文中,我们将研究前端开发人员经常必须处理6个文本处理和操作,并了解正则表达式是如何简化这个过程。 查找包含特定单词句子 假设我们想要匹配文本包含特定单词所有句子。...因为需要在搜索结果显示这些句子,或者想从文本删除它们。 正则表达式/[^.!?]*\bword\b[^.!?]*.?/gi可以帮我们做到这一点。...用单个空格替换多个空格 当网页渲染时,重复空格字符显示为单个空格。 但是,有时我们希望用户输入或其他数据包含多个空格,我们只想用用单个空格来表示。...要替换它们,我们在replace()第二个参数中使用$1,该参数将在括号插入匹配字符。 限制用户只能输入数字或字母 Web开发过程一项常见表单操作就是限制用户输入。...: 从字面上匹配冒号 \/ 从字面上匹配正斜杠字符 \S 匹配任何非空格个字符 + 匹配上一项一次或多次 [\/\w] 匹配正斜杠或单词字符。

1.8K30
领券