如何从另一个PHP文件中获取输入值?

时间:2016-07-23 10:25:04

标签: php html mysql input google-visualization

我想用输入文本字段更新我的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&auml;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} }}

4 个答案:

答案 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&auml;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文件。并将相同的名称付诸实践。