การ upload file อัพโหลดรูปไปยัง web server ที่เป็น web service ของ php
ผ่าน Web Service ยากน่ะครับ ผ่านพวก REST ปกติก็ได้ครับ คือ Post ไปยัง URL ของ Server ก็ได้แล้วครับ
Date :
2013-01-03 17:55:47
By :
mr.win
คือว่ามันต้องใช้web service อย่างเดียวเลยอะคะ พอดีมันเป็นโปรเจ็คที่ต้องทำอะคะ แหะๆ
พอมีลิ้งให้ศึกษาไหมอะคะ ภาษาอังกฤษก็ได้คะ ^^
มันจำเป็นจริงๆอะคะ รบกวนด้วยนะคะ แต่ถ้าไม่ได้ไม่เป็นไรค้า ขอบคุณมากๆเลยคะ
Date :
2013-01-03 18:11:05
By :
backupfile
ทำได้ครับ อ่านให้เป็น Binary แล้วส่งผ่าน Web Service โดย Web Service ก็เขียนลงไฟล์ครับ ตามตัวอย่างนี้ครับ
Code (Web Services)
<?php
$filename = "filename.jpg";
$file = fopen($filename,"w");
$input = DATA_FROM_WEB_SERVICE;
fwrite($file,$input);
fclose($file);
?>
Code (Client)
<?php
$fp = fopen($_FILES["filUpload"]["tmp_name"],"r");
$ReadBinary = fread($fp,filesize($_FILES["filUpload"]["tmp_name"]));
fclose($fp);
$FileData = addslashes($ReadBinary);
?>
Date :
2013-01-03 20:37:20
By :
mr.win
ขอบคุณมากเลยคะ เดี๋ยวจะลองทำดูนะคะ^^
ได้แนวทางแล้ว อิอิ
ตอนแรกเครียดมากเรย งมมาสองอาทิตแล้ว เลยลองมาโพสถามดู ขอบคุณมากๆเลยนะคะ
Date :
2013-01-03 23:04:22
By :
backupfile
ลองดูครับ
Code (PHP)
<?php
$fp = fopen($_FILES["filUpload"]["tmp_name"],"r");
$ReadBinary = fread($fp,filesize($_FILES["filUpload"]["tmp_name"]));
fclose($fp);
$FileData = addslashes($ReadBinary);
?>
เอา $FileData ส่งไปกับ Web Service ได้เลยครับ
Date :
2013-01-04 05:50:37
By :
mr.win
คร้า ถ้าติดตรงไหนจะพยายามหาเองก่อนแต่ถ้าไม่ได้จริงๆ จะรบกวนมาถามอีกนะคะ อิอิ^____________^
Date :
2013-01-04 09:18:28
By :
backupfile
PHP(Web Services)
<?php
require_once("lib/nusoap.php");
//Create a new soap server
$server = new soap_server();
//Define our namespace
$namespace = "http://localhost/testtest/sendfile/ExServer.php";
$server->wsdl->schemaTargetNamespace = $namespace;
//Configure our WSDL
$server->configureWSDL("Image");
// Register our method and argument parameters
$varname = array( 'strFileData' => "xsd:string");
$server->register('Image',$varname);
function Image($strFileData)
{
$filename = "filename.jpg";
$file = fopen($filename,"w");
$input = DATA_FROM_WEB_SERVICE;
fwrite($file,$input);
fclose($file);
}
// Get our posted data if the service is being consumed
// otherwise leave this data blank.
$POST_DATA = isset($GLOBALS['HTTP_RAW_POST_DATA']) ? $GLOBALS['HTTP_RAW_POST_DATA'] : '';
// pass our posted data (or nothing) to the soap service
$server->service($POST_DATA);
exit();
?>
PHP(client)
<html>
<body><h1>Uploading Files</h1>
<hr>
<form action="Exclient.php" method="post" enctype="multipart/form-data">
Filename:<input type="file" name="filUpload" />
<input type="submit" name="submit" value="Upload file now" />
</form>
<?php
if($_POST['submit']){
require_once("lib/nusoap.php");
$client = new nusoap_client("http://localhost/testtest/sendfile/ExServer.php?wsdl",true);
$fp = fopen($_FILES["filUpload"]["tmp_name"],"r");
$ReadBinary = fread($fp,filesize($_FILES["filUpload"]["tmp_name"]));
fclose($fp);
$FileData = addslashes($ReadBinary);
$params = array('strFileData' => $FileData);
$data = $client->call("Image",$params)or die ("error");
}
?>
</body>
</html>
ทำแบบนี้ใช่ไหมอะคะ หรือว่าผิดแล้วอะคะ
แล้วถ้าอยากดูข้อมูลที่เก็บไว้ในweb service จะเข้าไปดูยังไงหรอคะ
รบกวนด้วยนะคะไม่รู็จริงๆอะคะ T T
Date :
2013-01-04 12:05:25
By :
backupfile
แบบนี้แหละครับ ส่วนข้อมูลถูกจัดเก็บไว้ที่นี่
Code (PHP)
$filename = "filename.jpg";
$file = fopen($filename,"w");
$input = DATA_FROM_WEB_SERVICE;
fwrite($file,$input);
fclose($file);
Date :
2013-01-04 12:36:24
By :
mr.win
มีข้อสงสัยอะคะ
1. คือฝั่งclient ส่งfiledataไปยังserviceซึ่งเป็นข้อมูลประเภทstringแล้วพอในweb service มันรับค่ามาแล้วส่งค่า$strFileDataเข้าฟังก์ชันImage แล้วไม่เห็นได้ใช้ค่าที่ส่งเข้ามา แล้วงี้ไม่ต้องส่งค่าเข้ามาได้รึเปล่าคะ
2. ถ้าเราอยากจะดูข้อมูลที่เก็บไว้เราควรใช้คำสั่งอะไรหรอคะ เพราะว่าเวลารันเลือกรูปแล้วมันก่อจะกลับเป็นหน้าเดิม แล้วเราจะรู้ได้ยังไงอะคะว่ามันทำการเซฟสำเร็จแล้ว หรือว่าถ้าเปิดอ่านก่อควรใช้คำสั่งfopenใช่รึเปล่าอะคะ
3. ถ้าอยากรีเทิร์นค่าออกมาเพื่อแสดงโชว์รูปจะต้องส่งค่าอะไรกลับมาหรอคะ แล้วมันจะรีเทิร์นออกมาอยู่ในตัวแปร$dataใช่ไหมคะ
4. มันคืออะไรหรอคะ
$input = DATA_FROM_WEB_SERVICE;
ปล.ถามเยอะเลย ขอบพระคุณมากๆค้า
Date :
2013-01-04 13:35:24
By :
backupfile
อ่อเข้าใจแล้วค้า ขอบคุณคะ^^
Date :
2013-01-04 14:15:23
By :
backupfile
ได้ยังไงลองเอามาแชร์ด้วยครับ
Date :
2013-01-04 14:45:22
By :
mr.win
ไปโพสอันใหม่หรือว่าในนี้อะคะ ถ้าเกิดจะแชร์ให้คนอื่นได้รู้บ้าง ><
คือเพิ่งเข้ามาเล่นยังไม่ค่อยรู้อะคะ ^^
Date :
2013-01-04 17:01:53
By :
backupfile
โพสหัวข้อใหม่ก้ได้ครับ
Date :
2013-01-04 17:09:42
By :
mr.win
ถ้าอยากให้มันเก็บในแฟ้มที่เราต้องการต้องทำยังไงหรอคะ ฝั่งweb service อะคะ
Date :
2013-01-07 16:29:00
By :
backupfile
แล้วถ้า client เป็น xcode คับจะส่งไง
service เป็น php
รบกวนด้วยคับ...
Date :
2013-02-05 13:07:59
By :
Kapujin
Load balance : Server 05