[英]How to you set a table name to a correlation name in PHP for a SQL database?
[英]How to pick up the database name and table name from the URL in PHP?
我是PHP新手。 我需要有关从给定URL名称提取数据库名称和表名称的方法的帮助。 例如,假设我有一个类似于以下URL:
/test.php?db=...&table=.../
如何使用PHP从此URL提取数据库名称和表名称,以及如何将结果用于其他查询目的。
如果您想知道如何解析现有网址作为其参数,请执行以下操作:
parse_url()和parse_str()将帮助您剥离网址的组成部分。 您将主要关注以下内容
$elements = parse_url($url);
$kvps = $elements->query;
$db = parse_str($kvps['db']);
$table = parse_str($kvps['table']);
但是,如果您的意思是在渲染之前如何从当前页面获取变量:
<?php
$dbname = $_GET['db'];
$tablename = $_GET['table'];
?>
是的,以这种方式开放对数据库的“直接”访问涉及重大安全风险。 最好将函数混淆/封装/包装在诸如index.php&addUser=tim
类的任务中,而不是index.php&insert=tim&db=boofar&table=users&dbuser=root&dbpassword=secure
。
如果您只是在学习,只要知道为什么会出错,那么您在做什么就可以了。 如果您要进行生产编码,则确实需要替代解决方案。
有两种方法可以将变量或数据传递到另一个页面。
GET(通过URL)和POST(通常是表单提交)
您可以始终通过$ _GET http://php.net/manual/en/reserved.variables.get.php获取
要么
$ _POST http://nl.php.net/manual/en/reserved.variables.post.php
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.