我想用输入文本字段更新我的SQL语句,并且需要传递值。
我有一个index.php
文件和一个getDataC.php
文件。我需要在index的text字段中插入一个值来更新getDataC
中的SQL语句,以便在索引中使用函数。如何将索引字段的值传递给getDataC
以再次在索引中使用它?
这是我的代码,来自index.php
:
<body>
<h1 align="center">BigData - Gruppe 2</h1>
</br>
<table width="100%" align="center">
<tr>
<td width="25%" align="center">
<h2>Bitte wählen Sie eine Abfrage aus!</h2>
</td>
<td width="75%" align="center">
<h2>Grafische Darstellung</h2>
</td>
</tr>
<tr>
<td width="40%">
<hr>
<h3 align="center">Abfragen:</h3> </br>
<div>
Einfluss von Bildung auf Fertilitätsrate (Japan)
<button type="submit" id="actionA">Anzeigen</button>
</div> </br>
<div>
Einfluss von Internet auf Fertilitätsraten (Japan)
<button type="submit" id="actionB">Anzeigen</button>
</div> </br>
<div>
Einfluss von Internet und Bildung auf die Anzahl der Frauen in
Wirtschaft/Politik </br>
<form > <label for="LandC">Wähle ein Land: <input type=text id="LandC" name="LandC"> </label></form>
<button type="submit" id="actionC">Anzeigen</button>
</div> </br>
此处的代码来自getDataC.php
:
<?php
$con = mysqli_connect('localhost','root','','bigdata');
if (!$con) {
die('Could not connect: ' . mysqli_error($con));
}
if( isset($_GET['submit']) )
{
//be sure to validate and clean your variables
$landC = htmlentities($_GET['LandC']);
}
if( isset($landC) ) {
$k = $landC;
}
else $k='Germany';
$qry = "SELECT * FROM facts WHERE facts.Country = '". $k ."' AND Frauen_Fuehrungspositionen_Prozent IS NOT NULL";
$result = mysqli_query($con,$qry);
mysqli_close($con);
$table = array();
//Es´rstelt die Spaöten der Tabelle
$table['cols'] = array(
//Labels for the chart, these represent the column titles
array('id' => '', 'label' => 'Land', 'type' => 'string'),
array('id' => '', 'label' => 'Jahr', 'type' => 'number'),
array('id' => '', 'label' => 'Staatsausgaben GDP per capita in Dollar', 'type' => 'number'),
array('id' => '', 'label' => 'Internetzugang in Prozent', 'type' => 'number'),
array('id' => '', 'label' => 'Frauen Fuehrungspositionen in Prozent', 'type' => 'number')
);
$rows = array();
foreach($result as $row){
$temp = array();
//Values / Füllt die Spalten in der hier angegebenen Reihenfolge mit Zahlen
$temp[] = array('v' => (string) $row['Country']);
$temp[] = array('v' => (int) $row['Year']);
$temp[] = array('v' => (double) $row['Staatsausgaben_GDP_per_capita_in_Dollar']);
$temp[] = array('v' => (double) $row['Internetzugang_in_Prozent']);
$temp[] = array('v' => (double) $row['Frauen_Fuehrungspositionen_Prozent']);
$rows[] = array('c' => $temp);
}
$result->free();
$table['rows'] = $rows;
$jsonTable = json_encode($table, true);
echo $jsonTable;
?>
现在,getDataC
的else语句将$k
设置为'Germany'
,因为似乎输入字段LandC
的文本未传递给{{1} }}
答案 0 :(得分:0)
使用此标记<form action="HERE PUT THE PLACE OF TH FILE getDATAC.php" method="GET">
答案 1 :(得分:0)
<form>
应该是:
<form action="getDataC.php" method="GET">
将操作保持为文件的正确路径。
答案 2 :(得分:0)
您的HTML with Change(如果您的文件getDataC.php位于其他位置,请更改您的表单操作):
<body>
<h1 align="center">BigData - Gruppe 2</h1>
</br>
<table width="100%" align="center">
<tr>
<td width="25%" align="center">
<h2>Bitte wählen Sie eine Abfrage aus!</h2>
</td>
<td width="75%" align="center">
<h2>Grafische Darstellung</h2>
</td>
</tr>
<tr>
<td width="40%">
<hr>
<h3 align="center">Abfragen:</h3> </br>
<div>
Einfluss von Bildung auf Fertilitätsrate (Japan)
<button type="submit" id="actionA">Anzeigen</button>
</div> </br>
<div>
Einfluss von Internet auf Fertilitätsraten (Japan)
<button type="submit" id="actionB">Anzeigen</button>
</div> </br>
<div>
Einfluss von Internet und Bildung auf die Anzahl der Frauen in
Wirtschaft/Politik </br>
<form action="getDataC.php">
<label for="LandC">Wähle ein Land: <input type=text id="LandC" name="LandC"> </label>
<button type="submit" id="actionC">Anzeigen</button>
</form>
</div> </br>
带有更改的getDataC.php文件:
<?php
if(isset($_GET['LandC']) ){
//be sure to validate and clean your variables
$landC = htmlentities($_GET['LandC']);
}
if(isset($landC) ) {
$k = $landC;
}
else $k='Germany';
$qry = "SELECT * FROM facts WHERE facts.Country = '". $k ."' AND Frauen_Fuehrungspositionen_Prozent IS NOT NULL";
$result = mysqli_query($con,$qry);
mysqli_close($con);
$table = array();
//Es´rstelt die Spaöten der Tabelle
$table['cols'] = array(
//Labels for the chart, these represent the column titles
array('id' => '', 'label' => 'Land', 'type' => 'string'),
array('id' => '', 'label' => 'Jahr', 'type' => 'number'),
array('id' => '', 'label' => 'Staatsausgaben GDP per capita in Dollar', 'type' => 'number'),
array('id' => '', 'label' => 'Internetzugang in Prozent', 'type' => 'number'),
array('id' => '', 'label' => 'Frauen Fuehrungspositionen in Prozent', 'type' => 'number')
);
$rows = array();
foreach($result as $row){
$temp = array();
//Values / Füllt die Spalten in der hier angegebenen Reihenfolge mit Zahlen
$temp[] = array('v' => (string) $row['Country']);
$temp[] = array('v' => (int) $row['Year']);
$temp[] = array('v' => (double) $row['Staatsausgaben_GDP_per_capita_in_Dollar']);
$temp[] = array('v' => (double) $row['Internetzugang_in_Prozent']);
$temp[] = array('v' => (double) $row['Frauen_Fuehrungspositionen_Prozent']);
$rows[] = array('c' => $temp);
}
$result->free();
$table['rows'] = $rows;
$jsonTable = json_encode($table, true);
echo $jsonTable;
?>
答案 3 :(得分:0)
创建一个要发送数据的php文件。并将相同的名称付诸实践。