我正在使用php $ _GET []获取一个值,并且我希望将其作为简单html输入元素的值传递。我知道我可以这样做:
<?
$value = $_GET['value'];
echo '<input type="text" name="value" value="'.$value.'" />';
?>
但有没有办法将php与html分开,将值赋予文本框而不回显它?
我想将文本框创建为常规html元素,并且只在我设置其值的部分中使用php。
Iaroel的答案对我的目的来说更实用,但我喜欢接受的答案涉及许多问题的方式 - 我认为这对其他用户更有价值。
答案 0 :(得分:0)
如果您不希望在HTML中回显任何内容,请使用Ajax调用来获取值。
$.ajax({
url: 'getValues.php',
type: 'post',
dataType: 'json',
success: function (json) {
if (json) {
$.each(json, function (k, v) {
$(k).val(v);
});
}
}
});
[PHP]
echo json_encode(array('#first_input_id' => 'val1', '#second_input_id' => 'val2', '.some_classes' => 'val5'));
或者,如果值是静态的,则可以使用本地json文件。
答案 1 :(得分:0)
$_GET['value']
未定义时,您不希望出现错误。
<?php
$value = isset($_GET['value'] ? $_GET['value'] : '');
?>
<input type="text" name="value" value="<?php echo $value; ?>">
但谨慎,可以插入$_GET['value']
中的恶意数据,以便您必须对$value
关于&#34; 获取$ _GET [&#39;价值&#39;]没有PHP &#34;
你可以通过创建一个小的javascript函数来获得它而不需要PHP脚本:
<script type="text/javascript">
function $_GET(q,s) {
s = s ? s : window.location.search;
var re = new RegExp('&'+q+'(?:=([^&]*))?(?=&|$)','i');
return (s=s.replace(/^?/,'&').match(re)) ? (typeof s[1] == 'undefined' ? '' : decodeURIComponent(s[1])) : undefined;
}
</script>
那个正则表达到底是什么?这只是匹配网址模式的问题。
现在,您可以使用此$_GET()
方法将值分配给该文本框。在这个例子中,我使用了jQuery:
<script type="text/javascript">
$(document).ready(function() {
$('input[name="value"]').attr('value', $_GET('value'));
});
</script>
现在您的HTML代码将如此简单:
<input type="text" name="value">
参考:http://www.onlineaspect.com/2009/06/10/reading-get-variables-with-javascript/
答案 2 :(得分:0)
你的意思是这样吗?
<?php
$value = $_GET['value'];
?>
<input type="text" name="value" value="<?php echo $value;?>" />
或者这个(不建议):
<?php
$value = $_GET['value'];
?>
<input type="text" name="value" value="<?= $someVar ?>" />
但我建议查看模板引擎,例如http://www.smarty.net/
答案 3 :(得分:0)
如果你的php配置允许使用短标签,你可以这样做:
Subject::accept
答案 4 :(得分:0)
你可以尝试没有回声
<?php $value = $_GET['value'];?>
<input type = "text" name = "value" value="<?= $value; ?>" />
答案 5 :(得分:0)
如果它对你的项目非常重要,理想情况下你想要将你的PHP代码与你的html标签分开。这可以通过使用一些模板引擎来实现。
有一些众所周知的选项可供选择,最好是检查并查看哪一个最适合您的用例。
答案 6 :(得分:0)
您可以使用PHP Heardoc选项。在这里找到链接。