Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何添加按钮来更改URL中的值_Php_Json_Html - Fatal编程技术网

Php 如何添加按钮来更改URL中的值

Php 如何添加按钮来更改URL中的值,php,json,html,Php,Json,Html,我有一个从JSON生成的php页面,但我找不到一种方法来制作按钮以转到其他页面。 目前,我必须在URL中定义页面,并每次手动更改。 我的URL中还有一个我不想删除的值。 我该怎么做呢。 我目前尝试: 斑马分页 onassar/PHP分页 但是他们需要一个我不使用的sql数据库 这是我的当前代码,我已经出于设计原因添加了这些按钮 <!DOCTYPE html> <html> <head> <meta name="viewport" conten

我有一个从JSON生成的php页面,但我找不到一种方法来制作按钮以转到其他页面。 目前,我必须在URL中定义页面,并每次手动更改。 我的URL中还有一个我不想删除的值。 我该怎么做呢。 我目前尝试:

  • 斑马分页
  • onassar/PHP分页 但是他们需要一个我不使用的sql数据库
这是我的当前代码,我已经出于设计原因添加了这些按钮

<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<title>Blackout Media Partner Search tool</title>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">

<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap-theme.min.css">

<!-- Custom styles for this template -->
<link href="/css/jumbotron-narrow.css" rel="stylesheet">

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
<link href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.17/themes/base/jquery-ui.css" rel="stylesheet" type="text/css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.17/jquery-ui.min.js"></script>


</head>
<body>
<div class="container">

<?php
/**
 * Created by PhpStorm.
 * User: Marcel
 * Date: 5/23/2015
 * Time: 7:04 PM
 */

 $keyword = $_GET['keyword']; 
 $page = $_GET['page'];
 if($page == 0) {
     $start = 1;
 } else {
    $start = $page * 10;
 }
 echo '<center><h2>Blackout Media channel search tool</h2></center>';
 echo '<nav>
  <ul class="pager">
    <li class="previous"><a href="#"><span aria-hidden="true">&larr;</span> Previous Page</a></li>
    <li class="disabled"><a href="#">Page ' . $page . '</a></li>
    <li class="disabled"><a href="#">Start ' . $start . '</a></li>
    <li class="disabled"><a href="#">Keyword ' . $keyword . '</a></li>
    <li class="next"><a href="#">Next Page <span aria-hidden="true">&rarr;</span></a></li>
  </ul>
</nav>';
    echo'<div class="panel panel-primary">';
    echo '<div class="panel-heading"><h3 class="panel-title">Search</h3></div>';
    echo '<div class="panel-body">';
    echo '<div class="row">
    <div class="col-lg-4">
    <div class="input-group"><center>
        <form action="/" method="GET">
      <input type="text" class="form-control" placeholder="Search for..." name="keyword">
      <span class="input-group-btn">
  <input class="btn btn-default" type="submit" value="Search" />
</form></center>
</div>
</div>
</div>
</div>
</div>
<br>
<br>';
function AddDecimals($number, $dec_point='.', $thousands_sep=','){
    if($dec_point==$thousands_sep){
        trigger_error('2 parameters for ' . __METHOD__ . '() have the same value, that is "' . $dec_point . '" for $dec_point and $thousands_sep', E_USER_WARNING);
        // It corresponds "PHP Warning:  Wrong parameter count for number_format()", which occurs when you use $dec_point without $thousands_sep to number_format().
    }
    if(preg_match('{\.\d+}', $number, $matches)===1){
        $decimals = strlen($matches[0]) - 1;
    } else {
        $decimals = 0;
    }
    return number_format($number, $decimals, $dec_point, $thousands_sep);
}

$jsonContents = file_get_contents('https://gdata.youtube.com/feeds/api/channels/?q='.$keyword.'&start-index='.$start.'&v=2&&max-results=10&alt=json');

$json = json_decode($jsonContents, true);
//var_dump($json);
foreach($json['feed']['entry'] as $feed) {
    echo '<br>';
    echo'<div class="panel panel-primary">';
    echo '<div class="panel-heading"><h3 class="panel-title"> Channel: '. $feed['title']['$t'] . '</h3></div>';
    echo '<div class="panel-body">';
    echo '<ul class="nav nav-tabs nav-justified">
  <li role="presentation"><a target="_blank" href="'. $feed['link'][1]['href'].'">Youtube</a></li>
  <li role="presentation"><a target="_blank" href="https://channelmeter.com/search/?q='. $feed['yt$channelId']['$t'] .'">ChannelMeter</a></li>
  <li role="presentation"><a target="_blank" href="http://vidooly.com/search/'. $feed['yt$channelId']['$t'] .'">Vidooly</a></li>
  <li role="presentation" class="disabled"><a href="#">SocialBlade</a></li>
</ul>';
    echo '<ul class="list-group">';
    echo '<li class="list-group-item">Channel Name: '. $feed['title']['$t'] . '</li>';
    echo '<li class="list-group-item">Channel Description: '. $feed['summary']['$t'] . '</li>';
    echo '<li class="list-group-item">Channel ID: '. $feed['yt$channelId']['$t'] . '</li>';
    echo '<li class="list-group-item">Subscribers: '. AddDecimals($feed['yt$channelStatistics']['subscriberCount']) . '</li>';
    echo '<li class="list-group-item">Views: '. AddDecimals($feed['yt$channelStatistics']['viewCount']) . '</li>';
    echo '<li class="list-group-item">Channel Link: <a href='. $feed['link'][1]['href'].'>'. $feed['link'][1]['href'].'</a>' .'</li>';
    echo '<li class="list-group-item">Last Update: '. $feed['updated']['$t'] . '</li>';
    echo '<li class="list-group-item disabled">User ID: '. $feed['author']['yt$userId']['$t'] . '</li>';
        echo '<li class="list-group-item disabled">Partner Status: '. $feed['author']['yt$userId']['$t'] . '</li>';
    echo '</ul>';
    echo '</div>';
    echo ' </div>';
    echo '<br>';
}
 echo '<nav>
  <ul class="pager">
    <li class="previous"><a href="#"><span aria-hidden="true">&larr;</span> Previous Page</a></li>
        <li class="disabled"><a href="#">Page ' . $page . '</a></li>
    <li class="next"><a href="#">Next Page <span aria-hidden="true">&rarr;</span></a></li>
  </ul>
</nav>';
echo '</div>';

Blackout媒体合作伙伴搜索工具

使用jquery调用按钮中的函数,然后单击

parent.location.hash = "hello";
你可以吃这个

<button id="trigger">Change url</button>
更改url
当上面的按钮触发时,它将调用以下脚本

<script>
$(document).ready(function(){
$("#trigger").click(function(){
parent.location.hash = "hello";
});
});
</script>

$(文档).ready(函数(){
$(“#触发器”)。单击(函数(){
parent.location.hash=“你好”;
});
});
而且它会在不重新加载页面或手动键入的情况下更改您的url


您可以在url中拥有任何内容,即
#value
或您的子域或任何您想要的内容。

谢谢您的代码。我不知道如何输入它和我使用的值没有一个#在这里是一个例子,我如何让它工作欢迎。我看到了url,这里你想把输入到搜索框中的值放在url中吗?搜索框可以工作,但问题是我只加载了1k+响应中的10个,我想让它基本上使用页面,当我添加&page=2时,它将执行2*10,并在请求url中输出到API。如果我理解正确的话,我试着制作一个按钮,将2增加到3,如此类推,并以相反的方式增加到0。。这是你的需要吗。。您需要在不刷新页面的情况下进行分页,即,单击下一页上的按钮后,它将加载下10个项目。。我说得对吗?是的,你说得对,老实说,页面刷新对我来说并不合适,但我认为这是必要的,因为url中的值是在请求中发送到api的。