2011-05-06 3 views
0

안녕
내가 만들 내 응용 프로그램, 즉 이벤트에서 이벤트 사진을 업로드 할 또한 다음 내 데이터베이스에 내 코드는 다음과 같습니다
HTML 파일 : 지금이벤트를 업로드하는 방법 페이스 북을 사용하여 내 애플 리케이션의 사진을 만드시겠습니까?

<tr> 
    <td class="style6 style1 style8"><span class="style30">Add Event Photo </span></td> 
    <td colspan="4"><input name="userfile" type="file" class="style28" id="userfile" size="50" height="25" /></td> 
</tr> 
<tr> 
    <td><input name="image" type="image" src="img_2.gif" alt="submit form" border="0" /></td> 
</tr> 

업로드 할 PHP 코드 :

if (isset($_POST['eventtitle'])&& $_FILES['userfile']['size'] > 0){ 
$fileName = $_FILES['userfile']['name']; 
$tmpName = $_FILES['userfile']['tmp_name']; 
$fileSize = $_FILES['userfile']['size']; 
$fileType = $_FILES['userfile']['type']; 

$fp  = fopen($tmpName, 'r'); 
$content = fread($fp, filesize($tmpName)); 
$content = addslashes($content); 
fclose($fp); 

if(!get_magic_quotes_gpc()) 
{ 
    $fileName = addslashes($fileName); 
} 
mysql_query("INSERT INTO event values('$uid','$eventID','$newDate','$newtime','$newDate2','$newtime1','$name','$location','$street','$city','$fileName', '$fileSize', '$fileType','$content','$description')"); 
mysql_close($con); 
?> 

name, size, typecontent 및 이미지에 대한 필드이다.

+2

1) 첫 번째 if 문이 제대로 닫히지 않았습니다. 2) 웹 사이트 서식을 사용하지 않았습니다. 3) 질문이 명확하지 않습니다. 대답을 얻으려면 더 많은 노력을 기울이십시오. 그리고 마침내 SO에 오신 것을 환영합니다! – ifaour

+0

이 데이터는 데이터베이스에 이미지를 저장하는 방법입니다. facbook에서 이미지를 업로드 할 수있는 방법은 무엇입니까? .ya msql_close ($ con); 루프가 닫히는 것을 알고 있습니다. plz help –

답변

1

글쎄, 난 이틀 전에 이것에 대해 자습서를 작성했습니다 : How To: Create Facebook Events Using Graph API – Advanced

샘플 코드 :

<?php 
$app_id = "APP_ID"; 
$app_secret = "APP_SECRET"; 
$my_url = "REDIRECT_URL"; // mainly this should be the same URL to THIS page 

$code = $_REQUEST["code"]; 

if(empty($code)) { 
    $auth_url = "http://www.facebook.com/dialog/oauth?client_id=" 
    . $app_id . "&redirect_uri=" . urlencode($my_url) 
    . "&scope=create_event"; 
    echo("<script>top.location.href='" . $auth_url . "'</script>"); 
} 

$token_url = "https://graph.facebook.com/oauth/access_token?client_id=" 
. $app_id . "&redirect_uri=" . urlencode($my_url) 
. "&client_secret=" . $app_secret 
. "&code=" . $code; 
$access_token = file_get_contents($token_url); 

if(!empty($_POST) && (empty($_POST['name']) || empty($_POST['start_time']) || empty($_POST['end_time']))) { 
    $msg = "Please check your inputs!"; 
} elseif(!empty($_POST)) { 
    $url = "https://graph.facebook.com/me/events?" . $access_token; 
    $params = array(); 
    // Prepare Event fields 
    foreach($_POST as $key=>$value) 
     if(strlen($value)) 
      $params[$key] = $value; 

    // Check if we have an image 
    if(isset($_FILES) && !empty($_FILES['picture']['name'])) { 
     $uploaddir = './upload/'; 
     $uploadfile = $uploaddir . basename($_FILES['picture']['name']); 
     if (move_uploaded_file($_FILES['picture']['tmp_name'], $uploadfile)) { 
      $params['picture'] = "@" . realpath($uploadfile); 
     } 
    } 
    $params['method'] = "post"; 

    // Start the Graph API call 
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL,$url); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); 
    curl_setopt($ch, CURLOPT_POST, true); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, $params); 
    $result = curl_exec($ch); 
    $decoded = json_decode($result, true); 
    curl_close($ch); 
    if(is_array($decoded) && isset($decoded['id'])) { 
     // Event created successfully, now we can 
     // a) save event id to DB AND/OR 
     // b) show success message AND/OR 
     // c) optionally, delete image from our server (if any) 
     $msg = "Event created successfully: {$decoded['id']}"; 
    } 
} 
?> 
<!doctype html> 
<html> 
<head> 
<title>Create An Event</title> 
<style> 
label {float: left; width: 100px;} 
input[type=text],textarea {width: 210px;} 
#msg {border: 1px solid #000; padding: 5px; color: red;} 
</style> 
</head> 
<body> 
<?php if(isset($msg)) { ?> 
<p id="msg"><?php echo $msg; ?></p> 
<?php } ?> 
<form enctype="multipart/form-data" action="" method="post"> 
    <p><label for="name">Event Name</label><input type="text" name="name" value="a" /></p> 
    <p><label for="description">Event Description</label><textarea name="description"></textarea></p> 
    <p><label for="location">Location</label><input type="text" name="location" value="" /></p> 
    <p><label for="">Start Time</label><input type="text" name="start_time" value="<?php echo date('Y-m-d H:i:s'); ?>" /></p> 
    <p><label for="end_time">End Time</label><input type="text" name="end_time" value="<?php echo date('Y-m-d H:i:s', mktime(0, 0, 0, date("m") , date("d")+1, date("Y"))); ?>" /></p> 
    <p><label for="picture">Event Picture</label><input type="file" name="picture" /></p> 
    <p> 
     <label for="privacy_type">Privacy</label> 
     <input type="radio" name="privacy_type" value="OPEN" checked='checked'/>Open&nbsp;&nbsp;&nbsp; 
     <input type="radio" name="privacy_type" value="CLOSED" />Closed&nbsp;&nbsp;&nbsp; 
     <input type="radio" name="privacy_type" value="SECRET" />Secret&nbsp;&nbsp;&nbsp; 
    </p> 
    <p><input type="submit" value="Create Event" /></p> 
</form> 
</body> 
</html> 

난 당신이 자습서 등을 위해 동일한 문서에 링크 된 이전을 읽을 추천 정보.

관련 문제