This post will help you to understand. How can you call an API created from ASP.NET MVC and calling from PHP? API was created for the notification purpose for school.API Database is SQL server and server-side language is C#. You will see in this post how can you consume a post API created from other language and consume by PHP
Data Model
Field
|
Description
|
ID
|
Row ID (Auto Increment)
|
NotesText
|
Text of notification
|
NotesType
|
Attachment Type (Text,Link,File)
|
Path
|
Location of Attachemntq
|
ClassID
|
Class Name
|
NewGIF
| |
CreateDate
|
Created Date
|
API Code (C#)
public IHttpActionResult Postdata([FromBody] NotificationModel data)
{
UserRepository obj = new UserRepository();
string ErrMsg="";
obj.AddNotesDB(data, ref ErrMsg);
return Ok();
} public IHttpActionResult Postdata([FromBody] NotificationModel data)
{
UserRepository obj = new UserRepository();
string ErrMsg="";
obj.AddNotesDB(data, ref ErrMsg);
return Ok();
}
Database Repository C#
public bool AddNotesDB(NotificationModel ob, ref string ErrMsg)
{
String result = "";
try
{
using (SqlConnection dbcon = new SqlConnection(ConfigurationManager.ConnectionStrings["dbConnection"].ToString()))
{
using (SqlCommand cmd = new SqlCommand("[dbo].[AddNotification]", dbcon))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@NotesText", ob.NotesText);
cmd.Parameters.AddWithValue("@NotesType",Convert.ToInt32(ob.NotesType));
cmd.Parameters.AddWithValue("@ClassID",Convert.ToInt32(ob.ClassID));
cmd.Parameters.AddWithValue("@NewGIF", Convert.ToInt32(ob.NewGIF));
cmd.Parameters.AddWithValue("@CreatedBy", Convert.ToInt32(ob.CreatedBy));
cmd.Parameters.AddWithValue("@Path", ob.Path);
if (dbcon.State == ConnectionState.Closed)
dbcon.Open();
cmd.ExecuteNonQuery();
result = "1";
}
}
}
catch (Exception ex)
{
ErrMsg = ex.Message;
}
if (result == "1")
return true;
else
return false;
}
PHP Code
$msg="";
if(isset($_POST["submit"]))
{
$chk="0";
if(isset($_POST['chkNewGIF']))
{
$chk ="1";
}
//API URL
//$url = 'http://localhost:56585/api/myapi/Postdata/';
$url='http://ankuram.probuzzmedia.com/api/myapi/Postdata/';
//create a new cURL resource
$ch = curl_init($url);
//setup request to send json via POST
$data = array(
'NotesText' => $_POST["txtNotofaction"],
'NotesType' => '1',
'Path' =>'gurl',
'ClassID' => $_POST["ddlClass"],
'NewGIF' => $chk,
'CreatedBy' => '1'
);
$payload = json_encode($data);
//attach encoded JSON string to the POST fields
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
//set the content type to application/json
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
//return response instead of outputting
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
//execute the POST request
$result = curl_exec($ch);
//close cURL resource
curl_close($ch);
$msg="Saved";
}
No comments:
Post a Comment