php 相关问题

PHP(PHP:Hypertext Preprocessor)是一种广泛使用的,高级,动态,面向对象和解释的脚本语言,主要用于服务器端Web开发。

如何在wordpress中传递变量

我有表格。简化后看起来像这样: 我有一张表格。简化后看起来像这样: <form action="https://www.example.com/url.php" method="post" name="Go" id="Go"> <input name="Go" type="submit" value="Go"/> </form> 表单提交到的页面与其本身相同,即 https://www.example.com/url.php 是页面所在的表单。该页面上还有其他表格。 当提交此页面上的表单时,我使用 if (isset($_REQUEST['Go'])) {} 检查该表单是否已提交,然后执行操作。 这工作得很好,除了当我尝试通过将代码插入 WordPress 页面并将表单的操作地址更改为 https://www.example.com/permalink(这是永久链接 URL)来执行相同的操作时我已插入代码的页面的位置。该页面似乎不再获取 $_REQUEST。 WordPress 是否阻止了这个全局变量?如果是,最好的解决方法是什么? 什么都试过了,还是没有成功 我正在使用插件插入 php 代码。 WP好像不允许全局变量。在表单中使用隐藏字段做了一个解决方法。

回答 1 投票 0

如何按名称顺序而不是按时间顺序显示子类别列表?

我有类别和子类别。 类别页面使用以下代码显示其下的子类别: add_shortcode( 'list_subcats', function() { ob_start(); $current_cat =

回答 2 投票 0

移动到其他页面时,require 不起作用

navbar.php ret("从`用户`中选择*,其中`

php
回答 1 投票 0

Woocommerce 经常一起购买(添加到购物车)按钮重命名

我正在尝试重命名 woocommerce 单一产品中的一些特定产品并经常一起购买,下面的代码适用于单一产品按钮,但我如何频繁重命名...

回答 2 投票 0

按属性及其特定参数对目录产品集合进行排序 Magento 2.4.6

我有一个名为“Promotion”的自定义属性(ID:489,代码:“special_attributes”),其中包括四个选项:Promo、Sale 等。我需要按...对目录产品集合进行排序

回答 1 投票 0

如何为已安装的 Ubuntu LAMP 堆栈启用 cURL?

我已经安装了 Ubuntu LAMP 堆栈。但是cURL没有启用,我也找不到INI文件中列出的扩展名。我手动添加了,但是也没用。 我应该如何启用...

回答 11 投票 0

显示最小值前端 Woocommerce 上的订单金额

我正在尝试在我的 Woocommerce 存档页面和单个产品页面上显示最低订单金额(每个产品) 请参阅此处:https://webdesignvarsseveld.nl/groka/product-categorie/testcate...

回答 2 投票 0

Laravel Route 未命中控制器(Laravel Breeze)

我一直在尝试将我的一个旧项目迁移到 Laravel,通过 Laravel Breeze 处理身份验证。 在一个文件中,我有两张用于登录和注册的帖子表格。 登录一...

回答 1 投票 0

PHP 致命错误:未捕获的 ArgumentCountError:需要 3 个参数

WordPress版本:6.5.3 PHP版本:8.1 阿斯特拉主题版本:4.6.14 Nginx版本:1.26.0 当我将网站语言设置为中文并使用主题的搜索功能时,遇到错误,看起来...

回答 1 投票 0

如何动态地将字符串转换为(或还原)UTF8 特殊字体字符? [已关闭]

如何使用 PHP 函数“即时”将字符串动态转换为(并从)UTF8 特殊字体字符转换? 例如, echo cvtIntoSpclUTF8FntChars('脚本', '你好,世界...

回答 1 投票 0

CodeIgniter 4 中上传字段强制问题

我有一个涉及头像上传字段的问题:我不希望该字段是必需的,我不想更新头像图片,我该如何解决这个问题? 编辑.php 我有一个涉及avatar上传字段的问题:我不希望该字段是必需的,我不想更新头像图片,我该如何解决这个问题? edit.php <form method="POST" action="<?= site_url('customer/update/'.$customer['id']) ?>" enctype="multipart/form-data"> <?= csrf_field() ?> <input type="hidden" name="_method" value="PATCH"> <div class="form-group"> <label for="avatar">Avatar:</label> <input class="form-control <?= isset($errors['avatar']) ? 'is-invalid' : '' ?>" name="avatar[]" type="file" multiple /> <?php echo session()->getFlashdata('errors')["avatar"] ?? "";?> </div> <br> <button type="submit" class="btn btn-primary"><i class="fa fa-arrows-rotate"></i>&nbsp;Update</button> </form> CustomerController.php public function update($id) { $model = new CostumerModel(); $validations = new CustomerValidation(); if (!$this->validate($validacoes->customer_update)) { return redirect()->back()->withInput()->with('errors', $this->validator->getErrors()); } $processed_data = [ 'customer_name' => trim($this->request->getVar('customer_name')), ]; $model->update($id, $processed_data); if ($this->request->getFileMultiple('avatar')[0]->isValid()) { $avatar_model = new AvatarModel(); $avatar_model->where('customer_id', $id)->delete(); foreach ($this->request->getFileMultiple('avatar') as $avatar) { $original_name = $avatar->getName(); $image_path = 'uploads/avatars/' . $id . '/' . $original_name; $avatar->move(WRITEPATH . 'uploads/avatars/' . $id, $original_name); $avatar_model->insert([ 'customer_id' => $id, 'image' => $image_path, ]); } } return redirect()->to(route_to('indexPerson')); } CustomerValidation.php public array $customer_update = [ 'avatar' => 'permit_empty', ]; 如何解决 avatar 字段的强制性问题。 以下是修改更新方法的方法: public function update($id) { $model = new CostumerModel(); $validations = new CustomerValidation(); // Get the avatar files $avatarFiles = $this->request->getFileMultiple('avatar'); // Validate only if avatar files are provided if (!empty($avatarFiles)) { if (!$this->validate($validations->customer_update)) { return redirect()->back()->withInput()->with('errors', $this->validator->getErrors()); } } // Process other data $processedData = [ 'customer_name' => trim($this->request->getVar('customer_name')), ]; $model->update($id, $processedData); // Handle avatar update if files are provided if (!empty($avatarFiles)) { $avatarModel = new AvatarModel(); $avatarModel->where('customer_id', $id)->delete(); foreach ($avatarFiles as $avatar) { if ($avatar->isValid()) { $originalName = $avatar->getName(); $imagePath = 'uploads/avatars/' . $id . '/' . $originalName; $avatar->move(WRITEPATH . 'uploads/avatars/' . $id, $originalName); $avatarModel->insert([ 'customer_id' => $id, 'image' => $imagePath, ]); } } } return redirect()->to(route_to('indexPerson')); }

回答 1 投票 0

在 Javascript 中回显 PHP?

为什么这不起作用? 为什么这不起作用? <?php mysqli_select_db($connect,"dev"); $response = "Select response from revbut where session='$u'"; $rquery = mysqli_query($connect,$response); $responseanswer = mysqli_fetch_array($rquery); $re = $responseanswer['response']; ?> <script type="text/javascript"> <?php echo $re; ?> </script> JavaScript 中的 $re 没有得到回显。但如果我将它放在上面的 PHP 函数中,它就会得到回显。 编辑 - 但为什么这不起作用? if(<?php echo $re; ?>){ document.getElementById('hide').style.display = "none"; } 如果我将隐藏函数放在 if 之外 - 它正在工作。 它得到回显,但您不会在页面上看到任何内容,因为文本将写入 Javascript 标签内,而浏览器不会显示该标签。查看您的页面源代码以验证文本是否确实存在。 编辑 尝试 if(<?php echo json_encode($re); ?>){ document.getElementById('hide').style.display = "none"; } 这将确保您的 PHP 字符串将被转换为适当的 Javascript 类型 - 如果是字符串,它将确保字符串包含在 " 中并正确转义。 再次编辑 当您执行以下操作时 <script type="text/javascript"> if(<?php echo $re; ?>){ document.getElementById('hide').style.display = "none"; } </script> 这是写入 HTML 页面的内容(然后由浏览器解释) <script type="text/javascript"> if(whatever is in the $re variable){ document.getElementById('hide').style.display = "none"; } </script> 但这甚至不是有效的 Javascript。你想要的是 <script type="text/javascript"> if("whatever is in the $re variable"){ document.getElementById('hide').style.display = "none"; } </script> 注意 ",它确保整个内容都是有效的 Javascript,并且 $re 的内容将被浏览器的 Javascript 引擎解释为 Javascript 字符串。对 json_encode() 的调用正是这样做的 - 它将 PHP 变量转换为适当的 Javascript 变量。 试试这个: <script type="text/javascript"> alert('<?php echo $re; ?>'); </script> 首先,您不能假设所有与数据库相关的操作总是成功完成并且总是返回数据。打开 PHP 手册,查看所有 mysqli_* 函数调用并添加适当的测试来检测它们是否返回错误代码。 其次,PHP 和 JavaScript 不同时运行。 PHP 完成后,您得到的只是发送到浏览器的一些纯文本。如果该文本恰好是 JavaScript 代码,它将运行。您不必猜测:JavaScript 代码就在那里,您可以使用浏览器的“查看源代码”菜单来检查它。 查看源代码,它正在回显,尝试并确认 <script type="text/javascript"> alert('<?=$re; ?>'); </script>

回答 4 投票 0

foreach 中的 php while 循环仅在第一个循环上执行

我有一个值数组,我使用 while 循环来查找每个值的 CSV 文件并列出所有匹配项 但是,由于某种原因,while 循环只执行第一个 foreach...

回答 1 投票 0

Wordpress 搜索过滤器中未返回帖子

我正在编写一个 Wordpress 查询来过滤搜索结果。 我想使用模板logging_in_mentor_only_template.php、logged_in_only_template.php(以及两个受限的

回答 1 投票 0

在保存到 CakePHP 之前将 ID 插入 $this->request->data 数组

我有一个联系表格,要求用户提供姓名、电子邮件地址和消息。 姓名和电子邮件地址存储在 Person 中,消息存储在 Message 中 消息属于人,所以...

回答 2 投票 0

为什么heredoc中不允许使用类常量?

我想在heredoc中使用一个类常量,该常量在注释中使用,但这给了我一个错误。 类示例{ #[我的注释(架构:<< 我想在heredoc中使用一个类常量,该常量在注释中使用,但这给了我一个错误。 class Example { #[MyAnnotation(schema:<<<YAML type: {${MyOtherClass::A_CONSTANT}} YAML)] function myFunction() {} } 结果:PHP Fatal error: Constant expression contains invalid operations 这看起来类似于 另一个heredoc问题,但作为一个const值,这应该在编译时可用。 我找不到任何关于为什么这不起作用的信息。我很高兴能找到遇到类似问题的人的线索,或者找到一种更优雅的方式来编写 JSONSchema,而无需链接多个heredocs。当然,我可以只使用字符串。 为什么类常量可以在普通表达式中的heredoc中使用,但不能在注释中使用。 这是我当前在 PHP 8.1 中的解决方法: class Example { #[MyAnnotation(schema:<<<YAML type: YAML . MyOtherClass::A_CONSTANT)] function myFunction() {} } 这在现有的语言中是不可能的。有关于字符串插值更改的讨论(请参阅评论),但不是我认为可能的风格。 许多其他语言使用 ${foo} 样式字符串插值,最显着的是 bash 和 JavaScript(在模板文本中)。然而,它的行为与 PHP 中的行为不同。在 PHP 中,该语法意味着变量。在 JavaScript 中,它支持任意表达式 2)。在目前的形式中,[美元符号后的大括号(“${foo}”)]和[变量]的用途有限,并且会让其他附近语言的用户感到困惑,因为它们的行为完全不同。 PHP RFC:弃用 ${} 字符串插值 这也是我困惑的来源。

回答 1 投票 0

URL 变量/值没有被 php 获取

如果此变量不存在值,我有以下代码可以创建一个新的 OrdID: 如果 ($OrdID=="") { $con = mysql_connect("localhost","xxx","xxx"); mysql_select_db...

php
回答 1 投票 0

从另一个表中过滤sql

大家好,我正在开发一个列出和过滤产品的网站。 我的问题是 products 表有 40000 行,product_details 有 210 万行。 我想过滤产品表...

回答 1 投票 0

传递动态组件数据Laravel

所以我是 Laravel 的新用户,我有一个产品列表表,并且添加了一个删除按钮,当我单击它时,它会显示一个基本的是/否模式。 所以我的问题是当我尝试将 url 和 id 数据传递到我的模态时

回答 1 投票 0

当简码在WP中返回空时如何使用Php if语句

对于我所有的 AFC 字段,我使用 php if 语句,这样如果字段为空,则不会加载包含字段数据的整个部分,例如: 对于我的所有 AFC 字段,我使用 php if 语句,这样如果字段为空,则不会加载包含字段数据的整个部分,例如: <?php if( get_field('client_intro') ): ?> <section id="client-intro"> <div class="wrapper"> <p><?php echo get_field('client_intro'); ?></p> </div> </section> <?php endif; ?> 我想对包含短代码数据的部分做同样的事情,但我不知道该使用什么。该短代码由显示帖子的插件使用,所以我尝试了这个(以及许多其他): <?php if( have_posts() ): ?> <section id="client-posts"> <div class="wrapper"> <?php echo do_shortcode('[display-posts posts_per_page="10"]'); ?> </div> </section> <?php endif; ?> 没有任何作用,即使没有帖子,该部分仍然会加载。简单地说,我只想在有帖子时加载 #client-posts 部分,如果没有帖子,则不加载。 您可以将您的代码替换为以下代码 <?php if ( shortcode_exists( 'display-posts' ) ) { $dposts = do_shortcode('[display-posts posts_per_page="10"]'); if( $dposts !== ''){ ?> <section id="client-posts"> <div class="wrapper"> <?php echo $dposts; ?> </div> </section> <?php } } ?>

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.