使用下面的代码,我需要能够输入包含这些" & ?字符的跟踪像素代码。使用下面的代码,它允许在文本框中输入像素,保存它,并且文件中的结果行是正确的。但是,当它重新加载像素以在窗体字段中的值中显示时,它已经被切断。
<?php
if (isset($_POST["pixel"])) {
$fp = fopen("config.php", "w") or die("Unable to open file config file");
fwrite($fp, $_POST["pixel"]."\n");
fclose($fp);
}
$fp = fopen("configz.php", "r") or die("Unable to open config file");
$pixel = fgets($fp);
fclose($fp);
?>
<form method="post">
Pixel:<input type="text" name="pixel" value="<?=$pixel?>" />
<input type="submit" name="Save" value="Save">
</form>


发布于 2018-03-23 06:26:43
您需要更改下面的代码
<input type="text" name="pixel" value="<?=$pixel?>" />至
<input type="text" name="pixel" value='<?=$pixel?>' />在$pixel字符串中添加"“,如”“。它将从“in $pixel”的第一次出现中中断字符串。
编辑
你可以用双引号代替所有单引号。
JS
var b = a.replace(/'/g, '"');在那里A将是你的弦。
PHP
$pixel = str_replace("'", '"', $pixel);更新
将所有双引号替换为表单输入中的单引号。
var newVal = [];
$('#form_id *').filter(':input').each(function(){
var k = $(this).attr('name');
var v = $(this).val();
newVal[key] = v.replace(/'/g, '"');
});您可以循环遍历表单的所有值,并将其名称作为键,获取所有值,对所有值执行替换,并在空数组中添加key=>value对。在newVal中,可以使用所需的输出。
发布于 2018-03-23 06:38:38
<?php
if (isset($_POST["pixel"])) {
$fp = fopen("config.php", "w") or die("Unable to open file config
file");
fwrite($fp, $_POST["pixel"]."\n");
fclose($fp);
}
$fp = fopen("configz.php", "r") or die("Unable to open config file");
$pixel = fgets($fp);
fclose($fp);
?>
<form method="post">
Pixel:<input type="text" name="pixel" value='<?=$pixel?>' />
<input type="submit" name="Save" value="Save">
</form>添加一个单引号而不是双引号。
发布于 2018-03-24 09:27:23
我已经解决了我的问题,保留原来的所有代码,只需更改fget行。这允许字段中包含单引号或双引号,并正确显示数据。不让我发出去。它改变了这里。

https://stackoverflow.com/questions/49443229
复制相似问题