【发布时间】:2013-04-07 15:58:58
【问题描述】:
我编写了这段代码,它运行但不为我返回个人资料图片。我也仔细检查了获取图片的网址。我到底哪里错了? 我还希望返回的图片大小为 150x150px。如何获得要显示的自定义尺寸。谢谢!
<?php
define('BASE_URL', 'http://api.twitter.com/1/users/profile_image/screen_name=');
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$handle = $_POST['handle'];
$size = 'bigger';
if (isset($handle) && isset($size)) {
$twitterURL = BASE_URL . $handle . '&size=' . $size;
}
}
?>
<!DOCTYPE HTML>
<html lang="it-IT">
<head>
<meta charset="UTF-8">
<title>Get TwitterPic</title>
<link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro:200' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div id="wrapper">
<h1>Get image from twitter</h1>
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
<p><label for="handle">Twitter Handle</label>
<input type="text" id="twitter" name="handle" placeholder="Twitter Handle"></p>
<p><input type="submit" value="Get Twitter Pic"></p>
</form>
<?php if (isset($size) && isset($twitterURL)): ?>
<img src="<?= $twitterURL ?>">
<?php endif; ?>
</div>
</body>
</html>
【问题讨论】:
-
我没有看到你在任何地方设置
$gravatarURL,并且你的PHP代码在显示twitter URL之前明确检查isset($gravatarURL),出于某种原因。 -
编辑后:你确定 $twitterURL 设置正确吗?如果您直接从浏览器的地址栏访问它,是否显示图像?检查代码,您是否看到它在
的
src属性中设置正确? -
是的,从浏览器访问 url 有效。