小编Bin*_*ing的帖子

将Google搜索结果读入PHP数组?

简而言之,我正在寻找一种方法:

$results_array = google("search terms"); // returns array of URLs
Run Code Online (Sandbox Code Playgroud)

因此,举例来说,如果我的搜索词是"猫视频"我的$ results_array [0]可能是YouTube网址,而$ results_array 1可能是在Vimeo.

我已经看到了谷歌自定义搜索API,但它们都需要复杂的JSON的转换,ATOM,REST或其他一些系统这是我想要做的过于复杂.

有没有简单的解决方案?

编辑:我找到了它,感谢另一篇文章

感谢这篇文章,我能够弄明白.简而言之,我只是使用以下内容:

$results = json_decode(file_get_contents( 
          'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q='.
           urlencode($search)));

echo $results->responseData->results[$resultNumber]->url;
Run Code Online (Sandbox Code Playgroud)

我对这些挫折感到有些惊讶和沮丧 - 这似乎是一个非常普遍的问题,实际上,这是一个非常简单的答案.这确实涉及JSON,但它对用户完全透明.也许对我提出的问题更准确的解决方案是:

function google($query) {
    $results = json_decode(file_get_contents( 
          'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q='.
           urlencode($search)));

    return $results->responseData->results
}
Run Code Online (Sandbox Code Playgroud)

php api url search

5
推荐指数
1
解决办法
7312
查看次数

Javascript:document.url没有锚(哈希)部分

我已经尝试了30分钟的搜索,所以如果已经被问过,我会道歉.

我有一些Ajax返回一组结果,当点击一个结果时,它只需将带有附加数据的URL重新加载到下一页的PHP to GET的URL.问题是,如果用户点击某些内置锚点(我无法删除),则URL将something.com#location1如此附加,?action=next将其转换something.com#location1?action=next为浏览器解释为长锚,而不是实际指向的新URL.

如果用户从不点击锚点部分,则此重定向可以顺利使用 window.location=document.url+"?action=next"

有没有办法从现有页面的URL中删除锚点(包括哈希标记)?

解决了

使用Michael W的答案,我能够解决它.我只是替换了这一行:

window.location=document.url+"?action=next"

有了这个:

window.location=document.location.href.match(/(^[^#]*)/)[0]+"?action=next"

谢谢您的帮助!

javascript url anchor get window

5
推荐指数
2
解决办法
7299
查看次数

PHP HTML:文件上传不起作用

我不敢问这个问题,但是由于某种原因,我的文件无法正常工作。它称为ajax.php(尽管不要介意名称),这里是确切的代码:

<?php
error_reporting(-1);

print_r($_POST);
print_r($_FILES);
?>

<form action="ajax.php" method="post" enctype="multipart/form-data">
    <input type="hidden" name="MAX_FILE_SIZE" value="30000" />
    <input type="text" name="first" value="Bob" />
    <input type="text" name="middle" value="James" />
    <input type="text" name="last" value="Smith" />
    <input type="file" name="something" />
    <input type="submit" value="Submit" />
</form>
Run Code Online (Sandbox Code Playgroud)

当我提交而不附加文件时,它将在数组中打印数据。当我提交文件时,不会填充任何数组。

我想念什么明显的东西???

没有文件

Array ( [MAX_FILE_SIZE] => 30000 [first] => Bob [middle] => James [last] => Smith )
Array ( [something] => Array ( [name] => [type] => [tmp_name] => [error] => 4 [size] => 0 ) )
Run Code Online (Sandbox Code Playgroud)

带文件

Array ( …
Run Code Online (Sandbox Code Playgroud)

html php forms

5
推荐指数
1
解决办法
1219
查看次数

如何使用 CSS 位置:绝对在网站上定位 AdSense

我有一个 AdSense 帐户,只需复制/粘贴一段 Javascript 即可在我的网站上添加广告。然而,由于我没有放置任何 HTML,Js 正在生成一个 iframe 和一个广告出现在其中的 ins 元素。

我想将这些广告移至内容的左侧,在那里我为它们留出了空间。我尝试添加像“ins, iframe {position:absolute;left:0;top:0;}”这样的CSS,但它似乎被覆盖了。

所以我的问题是:如何强制 AdSense 广告出现在我想要的位置?最好用CSS。

css position ads adsense

4
推荐指数
1
解决办法
8444
查看次数

跟踪电子邮件打开时会显示真实图像

我正在尝试将电子邮件跟踪添加到我为小型客户业务构建的Web服务中.我正计划进行嵌入式图像解决方案(参考我服务器上的图像) - 除非其他人有更好的方法 - 但是当我使用引用我的服务器上的PHP页面的图像标签时,它会加载"已损坏的图像"图标.如何将其设为有效图像?

这是邮件PHP页面的代码:

<?php
   $body = "<html>Hello there!".
    "<img src='http://mysite.com/track.php?name=bob' />".
    "</html>";

    $subject = "Tracking on ".date('Y-m-d H:i:s');

    $headers  = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
    $headers .= 'From: webmaster@mysite.com' . "\r\n";

    mail('my_email@gmail.com',$subject,$body,$headers);
?>
Run Code Online (Sandbox Code Playgroud)

这是跟踪代码:

<?php
   include('database_connection.php');
   $query = "INSERT INTO tracking SET name='".$_GET['name']."', date=NOW()";
   mysql_query($query);

   // Tried this, but it doesn't work:
   echo "<img src='http://mysite.com/photos/image.jpg'>";
?>
Run Code Online (Sandbox Code Playgroud)

php email tracking image

4
推荐指数
1
解决办法
5929
查看次数

使jQuery DataTables默认提交所有行,而不仅仅是搜索时显示的行

我正在使用jQuery DataTables在我的系统中显示记录,通常包含<form>它和一些内联选项(如复选框作为表的列之一).当我使用内置搜索框时,它会缩小显示的列表.如果我编辑其中一条记录,则只提交表单显示的记录POST,而不是所有记录.我想改变那种行为.

例如,假设我有一个像这样的dataTable:

+---------+--------+
+ Name    | Option |
+---------+--------+
+ Adam    | [X]    |
+ Bob     | [X]    |
+ Chris   | [ ]    |
+---------+--------+
Run Code Online (Sandbox Code Playgroud)

我搜索Chris,这使得表格看起来像这样:

+---------+--------+
+ Name    | Option |
+---------+--------+
+ Chris   | [ ]    |
+---------+--------+
Run Code Online (Sandbox Code Playgroud)

我检查他的选项框,然后提交表格.因为当我提交时没有显示其他两个,其他两个没有POST,所以我最终得到这个:

+---------+--------+
+ Name    | Option |
+---------+--------+
+ Adam    | [ ]    |
+ Bob     | [ ]    |
+ Chris   | [X]    |
+---------+--------+
Run Code Online (Sandbox Code Playgroud)

显然我想要检查亚当鲍勃的盒子.如何在我的系统中默认更改dataTables中的此行为?

如果不可能,我如何 …

javascript datatable jquery

4
推荐指数
1
解决办法
6115
查看次数

如何在单个文件上强制使用HTTPS?(PHP)

我有一个处理信用卡处理的PHP文件.它以表格形式输入信用卡号,然后成为"确认"屏幕(显示信用卡号),然后再一次处理并显示结果.所有三个加载都将通过PHP提交完成(我意识到确认可能更好,因为Javascript,但我没有写它).它是目录中处理信用卡的唯一文件,因此它是唯一需要httpS连接的文件.

我尝试使用$ _SERVER数组强制执行此操作,查找用于从SCRIPT_URI(或其他条目)的前缀连接的协议,但没有一个具有前缀.

有没有一种简单的方法来使用同一目录中的.htaccess文件?如何仅针对一个文件强制执行该操作?如果还有其他简单方法,我该怎么做?

很抱歉这些问题,但到目前为止我的搜索还没有发现一个有效的解决方案,我担心我不知道最佳做法是什么.

谢谢!

php .htaccess ssl https

2
推荐指数
1
解决办法
9936
查看次数

jQuery:在onclick之前针对Ajax建议进行focusout触发

我有一个我正在构建的网页,我需要通过下拉列表选择1-9个成员,然后提供许多输入字段来输入他们的名字.每个名称字段下面都有一个"建议"div,其中填充了ajax-fed成员列表.该列表中的每个项目都有一个"onclick ='setMember(a,b,c)'"字段.一旦输入字段失去焦点,我们然后验证(使用ajax)输入用户名正好返回1个数据库条目,并将字段设置为该条目的文本,并将相关的隐藏memberId字段设置为该条目的id.

问题是:当我点击建议框中的成员名称时,失去焦点会触发,它会尝试验证具有多个匹配项的名称,从而清除它.我确实希望它清除无效,但我不希望它在建议框名称的onclick之前清除.

例:

在此输入图像描述

在上面的例子中,如果建议列表中只有一个名称失去焦点,保罗史密斯会填好,但如果我尝试在建议区域点击拉斐尔的名字(即:点击灰色div),它将消灭输入字段首先.

这是javascript,为简洁而修剪:

function memberList() {
    var count = document.getElementById('numMembers').value;
    var current = document.getElementById('listMembers').childNodes.length;
    if(count >= current) {
  for(var i=current; i<=count; i++) {
    var memberForm = document.createElement('div');
    memberForm.setAttribute('id', 'member'+i);
    var memberInput = document.createElement('input');
    memberInput.setAttribute('name', 'memberName'+i);
    memberInput.setAttribute('id', 'memberName'+i);
    memberInput.setAttribute('type', 'text');
    memberInput.setAttribute('class', 'ajax-member-load');
    memberInput.setAttribute('value', '');
    memberForm.appendChild(memberInput);
    // two other fields (the ones next to the member name) removed for brevity

    document.getElementById('listMembers').appendChild(memberForm);

  }
}
else if(count < current) {
   for(var i=(current-1); i>count; i--) {
       document.getElementById('listMembers').removeChild(document.getElementById('listMembers').lastChild);
   }
}

jQuery('.ajax-member-load').each(function() {
var …
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery triggers

0
推荐指数
1
解决办法
1970
查看次数

PHPExcel toArray 正在更改 XLSX 格式的日期和时间列

我正在使用此处找到的 excelToArray 函数:https ://gist.github.com/calvinchoy/5821235

function excelToArray($filePath, $header = true) {
    require_once("./PHPExcel/Classes/PHPExcel.php"));
    //Create excel reader after determining the file type
    $inputFileName = $filePath;
    /**  Identify the type of $inputFileName  **/
    $inputFileType = PHPExcel_IOFactory::identify($inputFileName);
    /**  Create a new Reader of the type that has been identified  **/
    $objReader = PHPExcel_IOFactory::createReader($inputFileType);
    /** Set read type to read cell data onl **/
    $objReader->setReadDataOnly(true);
    /**  Load $inputFileName to a PHPExcel Object  **/
    $objPHPExcel = $objReader->load($inputFileName);
    //Get worksheet and built array with first row as …
Run Code Online (Sandbox Code Playgroud)

php csv excel phpexcel

0
推荐指数
1
解决办法
2627
查看次数

标签 统计

php ×5

javascript ×3

jquery ×2

url ×2

.htaccess ×1

ads ×1

adsense ×1

ajax ×1

anchor ×1

api ×1

css ×1

csv ×1

datatable ×1

email ×1

excel ×1

forms ×1

get ×1

html ×1

https ×1

image ×1

phpexcel ×1

position ×1

search ×1

ssl ×1

tracking ×1

triggers ×1

window ×1