C#通过WebServer对数据库进行修改
2015-08-03 22:24
417 查看
一个简单的demo,通过如下框架在客户端将数据插入数据库Server上的数据库中。
1. 客户端是用C#写的,运行在一台笔记本上。
2. WebServer是用Apache和PHP搭建的,运行在一台台式机上,并且用花生壳申请了一个免费域名,绑定了该主机的IP地址,让客户端可以在互联网上向WebServer发送请求。
3. 数据库Server用的是MySQL,运行在另外一台台式机上;WebServer和数据库Server在一个局域网内。MySQL中有一个用来测试的DataBase,里面包含一个表Student,其字段如下:
C#使用WebRequest类和WebResponse类向WebServer发送请求和返回结果。
PHP获取C#发送的请求和向MySQL插入数据的代码如下:
1. 客户端是用C#写的,运行在一台笔记本上。
2. WebServer是用Apache和PHP搭建的,运行在一台台式机上,并且用花生壳申请了一个免费域名,绑定了该主机的IP地址,让客户端可以在互联网上向WebServer发送请求。
3. 数据库Server用的是MySQL,运行在另外一台台式机上;WebServer和数据库Server在一个局域网内。MySQL中有一个用来测试的DataBase,里面包含一个表Student,其字段如下:
+-------+-----------+-------+-------+-----------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-----------+-------+-------+-----------+-------+ | num | char(10) | NO | PRI | NULL | | | name | char(20) | NO | | NULL | | | sex | char(5) | NO | | NULL | | | age | char(5) | NO | | NULL | | +-------+-----------+-------+------+------------+-------+
C#使用WebRequest类和WebResponse类向WebServer发送请求和返回结果。
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Net; //WebRequest类和WebResponse类的命名空间 using System.IO; //Stream类的命名空间 namespace FormsApp1 { public partial class Form5 : Form { public Form5() { InitializeComponent(); } private static String RequesURL = "http://hhueccz.imwork.net:30242/"; //WebServer 的域名 private void button1_Click(object sender, EventArgs e) { /* * 目前的想法是每一个方法写一个php文件,所以URL的前面部分可以写成一个静态的全局变量; * insert.php为这个demo的例子插入学生信息方法对应的php文件; '?'后面跟传入的参数名和参数值,参数之间用'&'连接; * 这里完整的请求URL是: * "http://hhueccz.imwork.net:30242/insert.php?num=10001&name=张三&sex=男&age=20" */ RequesURL += "insert.php?"; RequesURL += "num=" + num.Text.Trim(); //界面上有一个名为num的TextBox RequesURL+= "&name=" + name.Text.Trim();//界面上有一个名为name的TextBox RequesURL += "&sex=" + sex.Text.Trim(); //界面上有一个名为sex的TextBox RequesURL += "&age=" + age.Text.Trim(); //界面上有一个名为age的TextBox /* * 我们这里用WebRequest类提供的一些方法向WebServer请求数据; * 使用Create方法实例化WebRequest对象,并传入RequestURL; * Credentials是网络上的身份验证,这里使用的是默认的验证方式; * 请求方式为"GET" */ WebRequest request = WebRequest.Create(RequesURL); request.Credentials = CredentialCache.DefaultCredentials; request.Method = "GET"; /* * 使用WebResponse类的一些方法获取WebServer返回的数据; * 其实是返回RequestURL的php页面上的数据; * 使用request.GetResponse()的时候,request对象才向WebServer发送请求,并接收回复 */ WebResponse response = request.GetResponse(); Stream stream = response.GetResponseStream(); StreamReader reader = new StreamReader(stream); String message = reader.ReadToEnd(); MessageBox.Show(message); reader.Close(); stream.Close(); response.Close(); } } }
PHP获取C#发送的请求和向MySQL插入数据的代码如下:
<?php include("conn.php"); $num = $_GET['num']; $name = $_GET['name']; $sex = $_GET['sex']; $age = $_GET['age']; $sqlText = "insert into student values('$num', '$name', '$sex', '$age')"; mysql_query($sqlText); //echo("success"); ?>
相关文章推荐
- 一个关于if else容易迷惑的问题
- MySQL中的integer 数据类型
- MySQL存储过程
- Android之获取手机上的图片和视频缩略图thumbnails
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- JSP/PHP基于Ajax的分页功能实现
- MySQL创建用户及权限控制
- MySQL管理数据表
- linux下mysql添加用户
- mysql procedure
- mysql触发器
- 数据库链接字符串查询网站
- 关于PHP通过PDO用中文条件查询MySQL的问题。