Принимая вход в ссылку - PullRequest
       16

Принимая вход в ссылку

3 голосов
/ 09 декабря 2011

Это API: =>

http://www.google.com/ig/api?weather=[city name]

Когда я ставлю вручную [название города] как http://www.google.com/ig/api?weather=dhaka Тогда, это работает отлично. Есть ли способ принять пользовательский ввод для названия города.

<?
$xml = simplexml_load_file('http://www.google.com/ig/api?weather=dhaka'); //Manually,I put 'dhaka' here
$information = $xml->xpath("/xml_api_reply/weather/forecast_information");
$current = $xml->xpath("/xml_api_reply/weather/current_conditions");
$forecast_list = $xml->xpath("/xml_api_reply/weather/forecast_conditions");
?>
<html>
    <head>
        <title>Google Weather API</title>
    </head>
    <body>
        <h1><?= print $information[0]->city['data']; ?></h1>
        <h2>Today's weather</h2>
        <div class="weather">       
            <img src="<?= 'http://www.google.com' . $current[0]->icon['data']?>" alt="weather"?>
            <span class="condition">
            <?= $current[0]->temp_f['data'] ?>&deg; F,
            <?= $current[0]->condition['data'] ?>
            </span>
        </div>
        <h2>Forecast</h2>
        <? foreach ($forecast_list as $forecast) : ?>
        <div class="weather">
            <img src="<?= 'http://www.google.com' . $forecast->icon['data']?>" alt="weather"?>
            <div><?= $forecast->day_of_week['data']; ?></div>
            <span class="condition">
                <?= $forecast->low['data'] ?>&deg; F - <?= $forecast->high['data'] ?>&deg; F,
                <?= $forecast->condition['data'] ?>
            </span>
        </div>  
        <? endforeach ?>
    </body>
</html>

Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 09 декабря 2011

Вы можете создать форму

<form method="post">
City <input type="text" name="cityName">
<br>
<input type="submit">
</form>

и изменить $xml = simplexml_load_file('http://www.google.com/ig/api?weather=dhaka'); на $xml = simplexml_load_file('http://www.google.com/ig/api?weather='.$_POST['cityName']);

2 голосов
/ 09 декабря 2011

Используйте html-формы, получите входные данные из $ _GET / $ _POST и rawurlencode () в api url.

...