首页 > 编程技术 > php

通过PHP连接MYSQL数据库、创建数据库、创建表

发布时间:2016-11-25 16:40

通过PHP连接MYSQL数据库


$conn = mysql_connect("localhost","root","password") or die("无法连接数据库");
mysql_select_db("table" ,$conn) or die ("找不到数据源");


-----------------------------------------------------------------------
通过PHP创建MYSQL数据库

$conn = mysql_connect("localhost","root","password") or die("无法连接数据库");
mysql_create_db("webjx") or die("无法创建数据库");
$sqlstr = "create database other_webjx";
mysql_query($sqlstr) or die("无法创建,一般请检查权限什么的");

----------------------------------------------------------------------------
创建mysql的表

$conn = mysql_connect("localhost","root","password") or die("无法连接数据库");
mysql_select_db("webjx",$conn) or die("无法连接数据库webjx");
$sql = "create table webjx_table(
ids integer not null auto_increment ,
primary key(ids)
)";
$mysql_query($sql) or die(mysql_error());

以下是在Linux下通过Apache PHP对Mysql数据库的备份的文件代码:

文件一、Listtable.php (文件列出数据库中的所有表格,供选择备份)

<html>
<head>
<title>
使用XML备份Mysql数据库</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#FFFFFF" text="#000000">
请选择要备份的表格:
<?
$con=mysql_connect('localhost','root','xswlily');
$lists=mysql_list_tables("embed",$con);
//数据库连接代码
$i=0;
while($i<mysql_num_rows($lists)){
$tb_name=mysql_tablename($lists,$i);
echo "<a href=backup.php?table=".$tb_name.">".$tb_name."</a>
";
//列出所有的表格
$i ;}

?>
</body>
</html>


文件二、Backup.php

<?if ($table=="") header("Location:listtable.php");?><html>
<head>
<title>
使用XML备份Mysql数据库</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<?
$con=mysql_connect('localhost','root','xswlily');
$query="select * from $table ";
//数据库查询
$result=mysql_db_query("embed",$query,$con);
$filestr="<"."?xml version="1.0" encoding="GB2312"?".">";
$filestr.="<".$table."s>";
while ($row=mysql_fetch_array($result))
//列出所有的记录
{$filestr.="<".$table.">";
$fields=mysql_list_fields("embed",$table,$con);
$j=0;
//$num_fields=mysql_field_name($fields,$j);
//echo $num_fields;
while ($j<mysql_num_fields($fields)){
$num_fields=mysql_field_name($fields,$j);
$filestr.="<".$num_fields.">";
$filestr.=$row[$j];
$filestr.="</".$num_fields.">";
$j ;}
$filestr.="</".$table.">";
}
$filestr.="</".$table."s>";
echo $filestr;
//以下是文件操作代码
$filename=$table.".xml";
$fp=fopen("$filename","w");
fwrite($fp,$filestr);
fclose($fp);
Echo "数据表".$table."已经备份成功!";?>
</body>
</html>

通过以上文件的操作就可以实现对数据库中选定的表格进行备份.

以上主要介绍了通过PHP实现XML备份数据库的操作方法,其实并不复杂,通过XML,我们可以备份各种各样的数据库,当然也可以通过相关的方法将备份的XML文档恢复到数据库中,这里就不具体描述了。

第一步:首先作一个如下面的表单:(注:这个表单里加了php程序)
<form method="post" action="mailtocard.php" name="card" onSubmit="return card_Validator(this)">
<table width="450" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td valign="top" width="143">
<input type="radio" name="inout" value="newyear" checked>
<img" width=100% src="/images/newyear1.gif" width="75" height="75"> </td>
<td width="170">
<input type="radio" name="inout" value="newyear2_2">
<img" width=100% src="/images/newyear2.gif" width="75" height="75"> </td>
<td width="137">
<input type="radio" name="inout" value="newyear3_3">
<img" width=100% src="/images/newyear1.gif" width="75" height="75"> </td>
</tr>
<tr>
<td valign="top" colspan="3">
<textarea name="text" rows="7" cols="60" wrap="VIRTUAL">你好朋友:
</textarea>
</td>
</tr>
<tr>
<td valign="top" colspan="3">
<select name="music">
<option selected>--卡片背景音乐--</option>
<option value="101marry.mid">一千零一夜</option>
<option value="canyon.mid">canyon</option>
</select>
<input onclick=playSound() type=button value="试听音乐">
</td>
</tr>
<tr>
<td valign="top" colspan="3"> </td>
</tr>
<tr>
<td valign="top" colspan="3">
<table width="370" border="0" cellspacing="0" cellpadding="0" align="center" class="p11">
<tr>
<td width="108">

<?

if (strlen($g_username) > 1)
{
//判定是否登陆,若已登陆显示姓名及Email,不用填写。
$db=mysql_connect("localhost","root","");
$result=mysql_db_query("数据库名","select email,http from 数据库表名 where username='$g_username'");

$row=mysql_fetch_array($result);
$bbs_email=$row[email];

echo "<div align='left'>您的姓名:</div>
</td>
<td width=342>
$g_username
<input type=hidden name=username value=$g_username>
</td>
</tr>
<tr>
<td width=108>
<div align=hidden>您的Email:</div>
</td>
<td width=342>
$bbs_email
<input type=hidden name=email value=$bbs_email>

";
}
//if (strlen($g_username) < 0)
else //判定没有登陆,需要填写姓名及Email。
{
echo "<div align='left'>您的姓名:</div>
</td>
<td width='342'>

<input type='text' name='username'>
</td>
</tr>

本文描述了我在开发我的Blog的过程中所碰到的一些问题以及解决他们的方法。因为本网站采用的是一个免费的远程MySql数据库db4free.net,而且这个数据库是5.1的版本,所以在开发过程中出现了许多问题。故在此发表,以便大家参考。

一、连接远程数据库的方法

对于PHP连接远程MySql数据库,通常要使用如下的语句:

var $serverName = 'db4free.net:3306';//数据库服务器
var $dbName = 'dbname';//数据库名
var $dbUsername = 'username';//用户名
var $dbPassword = '123';//登陆密码
mysql_connect($serverName,$dbUsername ,$dbPassword);
mysql_select_db($dbName);

二、解决中文显示乱码的问题

从MySQL 4.1开始引入多语言的支持,但是用PHP插入的中文会出现乱码.无论用什么编码也不行。非凡是对于这个5.1版本的MySql数据,他在中文的问题上使用较为麻烦。其解决方法如下:

1、在建表的时候设置编码类型为gb2312_chinese_ci.

2、在PHP页面的数据库连接语句加一行mysql_query("SET NAMES 'gb2312'",$link); 例如

$db_host="localhost";
$db_user="root";
$db_password="password";
$db_name="test";
$link=mysql_connect($db_host,$db_user,$db_password);
mysql_query("SET NAMES 'gb2312'",$link);
$db=mysql_select_db($db_name,$link);

这样在MYSQL里面的中文就能正常显示了。也可以用下面这句话:

mysql_query("SET NAMES 'gb2312'");

 

本地文件上传到服务器后,服务器的脚本对文件进行保存,一般有两种方式,一种是作为
文件保存到机器的特定目录下,但是这里就有很多诸如文件重名带来的种种不便之处,有的程
序自动改文件名字,把名字加上上传时间等方法以保证文件名的唯一性,这样失去了文件的原
始名字,通过文件名查询特定的文件信息也有很多困难,不利于文件的统一治理;一种是把文
件保存到数据库中利用数据库的强大功能,可以方便的实现文件的各种操作。本文采用的是第
二种方法。

这一组程序演示了,如何将硬盘的一个文件通过网页,上传到服务器的数据库里面,并且
读出文件的内容。

使用说明:
一共有5个程序,说明如下:
1. file.sql --- 本程序要用到的数据库表的结构[注:数据库用的是test]
2. upload.php --- 上传表单
3. submit.php --- 上传处理程序
4. show_info.php --- 显示部分上传的文件信息
5. show_add.php --- 显示[下载]文件

//////////////////////////////////////////////////////////////////////
(1)file.sql ---
//简要说明
保存上传得文件的基本信息的数据库结构,此处注重保存文件内容的字段,使用longtext类型
因为普通的blob类型最大存储64K字节。另外,一般php的默认配置最大上传文件为2M,假如上
传的文件非凡大,莫忘了调整php.ini的设置哦。
//文件源码
create table receive(
id int NOT NULL auto_increment, #主键,自动累加
file_data longblob, #文件内容
file_type varchar(100), #文件类型
file_name varchar(255), #文件名字
file_size int, #文件大小
PRIMARY KEY(id) #主键
)

//////////////////////////////////////////////////////////////////////
(2)upload.php ---
//简要说明
上传界面,用户选择文件,然后提交给submit.php处理
值得注重的是一个 MAX_FILE_SIZE的隐藏值域,通过设置其VALUE可
以限制上载文件的大小。
//程序源码
<html>
<head>
<title>文件上传表单</title>
</head>
<body>
<table>
<form enctype='multipart/form-data' name='myform' action='submit.php'
method='post'>
<INPUT TYPE = "hidden" NAME = "MAX_FILE_SIZE" VALUE ="1000000">
<tr><td>选择上传文件</td><td>
<input name='myfile' type='file'></td></tr>
<tr><td colspan='2'><input name='submit' value='上传'
type='submit'></td></tr>
</table>
</body>
</html>

标签:[!--infotagslink--]

您可能感兴趣的文章: