2014-05-04 147 views
1

我正在研究一個在PHP中使用shareaholic API的小應用程序。 我創建了一個小函數,可以構建正確的url。 當返回字符串時,它與V後換行返回它下面 輸出:在我創建的字符串中創建一個隨機行

http://www.shareaholic.com/api/share/?v=1&apitype=1&apikey=#################################&service=5&link=http://website.com/contest-page/&title=Website&notes=I+voted+for+Example5%27s+photo+to+win

因此,瀏覽器僅獲取URL到/?

這裏是PHP

function createShareToLink($serv, $name){ 
    $sharebase = 'http://www.shareaholic.com/api/share/?v=1'; 
    $apitype = "&apitype=1"; 
    $apikey = "&apikey=redacted"; 
    $twitter = false; 

    $title = trim("redacted"); 
    $title = urlencode($title); 
    $url = "http://redacted.com/contest-page/"; 
    $msg = urlencode("I voted for $name's photo to win"); 


    switch($serv){ 
     case 1: //facebook 
      $service = "&service=5"; 
      break; 
     case 2: //twitter 
      $twitter = true; 
      $service = "&service=7"; 
      break; 
     case 3: //Google   
      $service = "&service=304"; 
      break; 
     default: 
      $service = "&service=5"; 
      break; 
    } 

    if(!$twitter){ 
     $shareurl = $sharebase . $apitype . $apikey . $service . '&link=' . $url . '&title=' . $title . '&notes=' . $msg; 
    } else { 
     $shareurl = $sharebase . $apitype . $apikey . $service . '&link=' . $url . '&title=' . $title . '&template=redacted.com%20100lbs%20BBQ%20Giveaway%20${short_link}%20via%[email protected]%20%23Contest%20%23Giveaway'; 
    } 

    return $shareurl; 
} 

我從來沒有碰到這個,任何想法? 顯示在WordPress 中的輸出在HTML表單中,我可以看到整個鏈接,但是它在?這是通過點擊傳遞給瀏覽器的。同樣,共享api返回所有信息爲空。

+0

您是否嘗試刪除'/?v = 1'並再次輸入?有可能是一個字符,雖然我懷疑它 – kennypu

+0

我剛剛複製你確切的代碼,它對我來說很好,沒有換行符。但問題可能出在你輸出的網址上。 –

+0

當然,問題不在於該PHP代碼。嘗試查看編碼,將其設置爲不含BOM的UTF-8並再次檢查。如果php文件有正確的編碼,就不可能這樣做。我想到的另一件事是:wordwrap,如果wordpress有一個wordwrap功能並且沒有檢測到它是鏈接,它可能會將您的鏈接分成幾部分。 –

回答

0

確定這是奇怪的我,但我得到了它的工作,這是最重要的事情 我用的是這樣的:

echo '<form action="' . $fblink . '" target="_blank" method="get"><input type="submit" id="fblink"></form>'; 

這將只發送了拳頭的一部分,就像我上面提到的。

我把它改成了div封裝的鏈接,現在工作正常。 我真的不知道爲什麼其他方式無法正常工作,但無論如何它現在可以工作。

謝謝大家。

相關問題