小编Chu*_*d37的帖子

恼人的持久$ _GET变量

我的<a href>网页中有一个包含以下链接:

<a href=\"?remove=0\">Remove</a>

哪个好.然后我通过以下方式引用它:

if(isset($_REQUEST['remove']))

检查是否已设置然后执行相对操作(从数组中删除值).

但是,当我在我的php页面中单击另一个表单时,设置为method='POST',该$_GET值保留在URL栏中,因此由于某种原因再次传递并且正在破坏我的程序.

有什么想法吗?

php

0
推荐指数
1
解决办法
36
查看次数

cURL函数无响应

我编写了以下函数,该代码是我在其他地方使用的代码,并进行了少许修改以用作函数(在函数参数中使用$ url):

function curl2str($url) {
    $cURL = curl_init($url);
    curl_setopt($cURL, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($cURL, CURLOPT_CONNECTTIMEOUT, 5);
    $data = curl_exec($cURL);
    curl_close($cURL);
    return $data;
}
Run Code Online (Sandbox Code Playgroud)

我只希望一个函数将URL返回到字符串中,以实现快速简便的API。我传递的URL是有效的,当我将其放入浏览器时可以正常工作。我这样称呼它:

<?=curl2str("**valid URL here**");?>

由于某种原因,它只是返回false。我究竟做错了什么?

更新 当我将此问题URL放入as时$url,得到响应。但是,当我使用自定义URL(在浏览器中可以正常工作)并且仅在目录中显示文件列表时,我会得到bool:false。

更新2 似乎任何域都可以正常工作,除了我尝试访问的域。碰巧这是同一服务器上的根域,我正在从子域运行此脚本,但是由于basedir_restrictions的原因,我无法从子域访问文件夹。因此,我写了一些php来获取文件夹的内容,并将其作为序列化数组(未安装JSON)输出到浏览器。但是我根本无法从该根域得到任何答复。它在浏览器中可以正常工作,但在cURL中却不能。在cURL中,其他所有东西都可以正常工作。

:(

php curl

0
推荐指数
2
解决办法
1万
查看次数

正则表达式:替换除空格之外的任何非字母数字字符串

抱歉,我从来没有掌握过正则表达式。

我需要从字符串中删除任何非字母数字的内容(从产品名称中,其中一些包含&符号),不包括空格。

到目前为止,我有这个(从另一个stackoverflow 帖子找到):

$productname = preg_replace("~[\W]~","",$product['name']);
Run Code Online (Sandbox Code Playgroud)

现在,这将用“”替换所有字母数字。这很好,但我想排除空格,因为它当前正在删除所有空格。另外,我在正则表达式中找不到波浪号 ( ~) 的作用。

关于空格,我已经看到有一个由 实现的否定前瞻?!,但我不知道如何将其合并到上面。

php regex

0
推荐指数
1
解决办法
5359
查看次数

如何从数据库中选择<select>语句?

我不太确定如何正确地说出这个问题 - 但这仅仅是出于兴趣.我不得不从数据库加载信息并使用值预先填充表单.所以在文本框的情况下,它很简单,我只需设置值:

<input type="text" value="<?=$foo;?>" name="foobar">

然而,当我选择框时,我发现我的代码变得非常草率,因为我需要selected在某处放置一个值.所以我真的有两种选择,我不喜欢这两种选择:

$one = $two = "";
switch ($myval) {
  case "1": $one = " selected";
  case "2": $two = " selected";

}
Run Code Online (Sandbox Code Playgroud)

然后在HTML中:

<select name="myval">
<option value="1"<?=$one;?>>One</option>
<option value="1"<?=$two;?>>Two</option>
</select>
Run Code Online (Sandbox Code Playgroud)

或者另一种选择是在select中间放置一个简写if语句:

<select name="myval">
<option value="1"<?=($myval=="1") ? " selected" : "";?>>One</option>
<option value="1"<?=($myval=="2") ? " selected" : "";?>>Two</option>
</select>
Run Code Online (Sandbox Code Playgroud)

看起来稍微干净一点,但它仍然让我烦恼.

任何人都有更有效率的方法吗?当它只是一个Yes/No下拉框而且我必须为每个值编写愚蠢的if语句时,它更加难以理解.

同样的问题也适用于复选框.

html php mysql database

-1
推荐指数
1
解决办法
159
查看次数

如何将字符195和192输出为HTML UTF8?

我想回应原始目录结构.使用ascii字符192和195.我该怎么做?我在使用时最终会得到一个无效的字符 chr(192);.我尝试过使用mb_convert_encoding但是也没用.有解决方案吗

php

-1
推荐指数
1
解决办法
54
查看次数

标签 统计

php ×5

curl ×1

database ×1

html ×1

mysql ×1

regex ×1