2010-10-13 5 views
7

Cela ressemble à une question assez simple mais je ne trouve pas la réponse nulle part.Comment ajouter des retours à la ligne ou des retours chariot à la description sur facebook graphe API

J'ai un message d'une zone de texte. et je veux utiliser la bibliothèque php facebook actuelle pour faire ce qui suit ...

$description = $_POST['textarea_description']; 

//magic happens 

$attachment = array(
'access_token' => $token, 
'message' => "$title", 
'picture' => "$image_url", 
'link' => "$action_link", 
'name' => "$action_label", 
'caption' => "$caption", 
'actions' => $action_json, 
'description' => "$description", 
); 

$facebook->api('/'.$my_uid.'/feed', 'POST', $attachment); 

et de le faire fonctionner. À l'heure actuelle, il semble ignorer

<br> <br /> \n \r \n\r \r\n 

mais je suis sûr que je pourrais avoir fait quelque chose pour bousiller mes tests .. J'ai juste besoin de remplacer « la magie se produit » avec quelque chose qui fonctionne. En ce moment, il ne fait que convertir toutes les nouvelles lignes que je lance dans les espaces .. Assez frustrant. Quelqu'un sur les forums facebook addslashed suggéré() de toutes choses ... mais cela ne semble pas fonctionner pour moi

Merci, -FT

+0

Vérifiez l'API facebook pour voir si les nouvelles lignes sont prises en charge dans le champ de description. Les chances sont qu'ils les dépouillent autrement. – Fanis

+0

Je serais surpris si c'est possible, ils sont très stricts à ce qui est autorisé dans les messages muraux (rien n'est autorisé en fait) – serg

Répondre

2

Si vos lignes de texte sont assez longs, et vous remplacer chaque espace dans chaque ligne avec un espace insécable ("& nbsp;") et mettre un espace régulier à la fin de la ligne, alors cela aura pour effet de forcer chaque ligne sur une nouvelle ligne, par exemple

Ce & nbsp; est & nbsp; certains & nbsp; exemple & nbsp; texte & nbsp; etc. Cette valeur & nbsp; est & nbsp; certains & nbsp; l'exemple & nbsp; le texte & nbsp; Cette valeur & nbsp; est & nbsp; certains & nbsp; l'exemple & nbsp; le texte & nbsp;

Si des lignes sont trop courtes, vous pouvez les masquer avec & nbsp;

2

J'écris une fonction simple qui ajoute &nbsp; après chaque ligne de texte.

public static function fbLinkDescriptionNewLines($string){ 
    $parts = explode("\n", $string); 
    $row_limit = 60; 

    $message = ''; 
    foreach($parts as $part){ 
     $str_len = strlen($part); 
     $diff = ($row_limit - $str_len); 

     $message .= $part; 

     for($i=0; $i <= $diff; $i++){ 
     $message .= '&nbsp;'; 
     } 
    } 
    return $message; 
} 

REMARQUE: dans votre chaîne, vous devez utiliser \n pour de nouvelles lignes.

+0

Cela a fonctionné pour moi, mais j'ai besoin d'ajouter un message $. = ''; avant le retour – marcostrama

Questions connexes