61阅读

php增删改查代码-PHP正则删除html代码中a标签并保留标签内容的方法 原创

发布时间:2017-10-11 所属栏目:网络编程

一 : PHP正则删除html代码中a标签并保留标签内容的方法 原创

本文实例讲述了PHP正则删除html代码中a标签并保留标签内容的方法。分享给大家供大家参考,具体如下:

一、问题:

有HTML代码如:

 <div>欢迎访问61阅读<a href=http://www.61k.com>www.61k.com</a></div> 

要求正则删除a标签,同时保留a标签内容,如下:

 <div>欢迎访问61阅读www.61k.com</div> 

二、解决方法:

 $str = "<div>欢迎访问61阅读<a href=http://www.61k.com>www.61k.com</a></div>"; $str = htmlspecialchars_decode($str); $str = preg_replace("/<a[^>]*>(.*?)</a>/is", "$1", $str); echo $str; 

运行结果为:

 <div>欢迎访问61阅读www.61k.com</div> 

问题解决!

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools.61k.com/regex/javascript

正则表达式在线生成工具:
http://tools.61k.com/regex/create_reg

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php正则表达式用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

二 : powerbuilder增删改查代码

窗口w_1的open事件代码:
dw_1.SetTransObject(SQLCA)=======================================给增加记录的按钮cb_append的click事件代码:long rowrow = dw_1.insertrow( 0)dw_1.setrow( row )dw_1.scrolltorow( row )dw_1.setfocus( )
================一下每个按钮都写上用户事件u_keydown========================
给cb_append定义1个用户事件u_keydown,事件号为pbm_keydown,当焦点落在该控件上时,按任意键都将触发u_keydown。u_keydown代码:if keydown(keyenter!) then//如果按了回车键,则触发clicked 事件this.triggerevent( clicked !)end if
===========================================
给插入记录的命令按钮cb_insert的clicked事件代码:long rowrow = dw_1.insertrow(dw_1.getrow() )dw_1.setrow( row )dw_1.scrolltorow( row )dw_1.setfocus( )
=============================================
删除记录按钮cb_delete的clicked事件代码:dw_1.deleterow( dw_1.getrow )
===============================================给显示记录的cb_retrieve的clicked事件代码:dw_1.retrieve( )
============================================存盘的命令按钮cb_update的clicked事件代码:dw_1.update()
============================================给返回的命令按钮cb_return的clicked事件代码:close(parent)
============================================以下代码希望实现,当焦点落在命令按钮上时,按回车键能代替鼠标。在数据窗口中,按回车键可以跳到下1个输入项,而不是下一行。当在最后一行的最后一列按回车键时,将增加1个空行。在最后一行按向下的箭头键↓时,也增加1个空行。================以上面代码为基础============================给数据窗口dw_1定义1个用户事件u_keyenter,事件号为pbm_dwnprocessenter,当焦点落在该控件上时,按回车键将触发u_keyenter。代码:int collong rowcol = getcolumn( )row = getrow ()if col<4 then//当前列不是最后一列(dw窗口为1个4列的表)setcolumn( col+1 )elseif row //当前列是最后一列但当前行不是最后一行setrow( row+1 ) //将下一行的第一列变为当前行scrolltorow( row+1 )setcolumn(1)else//当前列是最后一列且当前行是最后一行row = insertrow ( 0 ) //增加一行setrow( row ) //将新行的第一列变为当前列scrolltorow( row )setcolumn(1)end ifend ifreturn 1 //放弃系统原来的操作
==============================================给数据窗口dw_1再定义1个用户事件u_keyarrow,事件号为pbm_dwntabdownout,当焦点落在该控件上且位于最后一行时,按向下箭头键↓ 将触发u_keyarrow。代码:long rowrow = insertrow( 0 ) //增加一行setrow( row ) //将新行变为当前行scrolltorow( row )
===================================================================































三 : VB6.0操作SQL Server——增删改查

一、数据录入

通过VB向SQL Server数据库中录入数据,可以使用数据绑定控件录入数据与使用SQL语句录入

1.利用数据绑定控件录入数据

使用数据绑定控件录入数据可以运行较少的代码,实现向数据库中录入数据,数据绑定后,由于数据绑定控件已经与数据表相连接,所以只需通过ADO控件的AddNew方法添加一条新的空白记录,再通过Update方法保存当前的记录,即可完成向数据库中录入数据。[www.61k.com)

例:向数据库中添加一条记录

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

PrivateSubcmdAdd_click()

  

      Adodc1.Recordset.AddNew

  

EndSub

  

PrivateSubcmdSave_click()

  

     DimI asLong

  

     for I =0 to 6

  

          Adodc.Recordset.Fields(i).value=Text(i+1).text

  

     NextI

  

     Adodc1.Recoedset.Update

  

     MsgBox"添加信息成功!"

  

EndSub

2.使用Insert语句录入数据

  使用SQL语句录入数据,通过connection对象的execute方法执行SQL语句,语法如下:

   connection.execute 字符串,记录数,字符串参数

例:向student数据库中添加一条学生信息

?

Dimcnn as ADODB.conection

  

Dimrst as ADODB.recordset

  

Privatesub Form_Load()

  

    set cnn=NewADODB.connection

  

    set rst=new ADODB.recordset

  

    cnn.open"provider=SQLOLEDB;Persist security Info=True;User ID=sa;Initial Catalog=student;Data Source=."

  

    rst.open"select * from student_info",cnn

  

    set MSHFlexGrid.DataSource=rst

  

EndSub

  

Privatesub cmdAdd_click()

  

   cnn.execute"insert into student_info(txtSID,txtName,txtSex;txtBornData,txtRuDate,txtClassNo)"& _

  

          "value('"& txtSID &"','"& txtName &"','"& txtSex &"','"& txtBornDate &"','"& txtRuDate &"','"& txtClassNo &"')"

  

EndSub

二、数据删除

通过VB删除数据时,不仅可以使用SQL语句中的Delete语句来实现,也可以使用ADO控件Delete方法来删除数据。

1.使用ADO控件Delete方法删除数据

使用ADO控件Delete方法删除数据时,被删除的数据信息表面上是被删除了,实质上数据还存在与内存中,这时还需要使用ADO控件的Update方法才能够将数据彻底地删除

例:删除表中的指定记录:

Adodc1.Recordset.Delete

Adodc1.Recordset.Update

例:通过ADO控件Delete方法删除表中指定的数据:

?

PrivateSubForm_Load()

  

  Adodc1.ConnectionString="Provider=SQLOLEDB;Persist Security Info=True;User ID=sa;Initail Catalog=student;Data Source=."

扩展:vb6.0xmlhttp操作视频 / vb6.0 操作word / vb6.0操作excel

  

  Adodc1.Commandtype=adCmdText

  

  Adodc.Recordsource="select * from student_info"

  

  SetDataGrid1.DataSource=Adodc1

  

EndSub

  

PrivateSubCommand1_Click()

  

  Adodc1.Recordset.Delete

  

  IfMsgbox("确认删除指定数据吗?",vbYesNo,"提示")=vbYes then

  

     Adodc1.Recordset.Refresh

  

  EndIf

  

EndSub

2.执行Delete语句进行数据删除

使用Delete语句删除数据,不仅可以删除指定的一条或多条语句,也可以将数据表中的数据全部删除

例:在VB中执行Delete语句删除表student中的全部数据

Cnn.Execute"delete from student"

可以在Delete语句后使用where来限定条件,将条件符合的数据删除

例:删除表student中年龄大于25岁的数据

?

Cnn.Execute"delete from student where 年龄>'25'"

3.删除列中的数据

无论是通过ADO控件Delete方法还是delete语句删除数据,都是将一行或多行数据全部删除,如果表中一些行的数据需要保留某些列中的信息,那么使用ADO控件Delete方法或Delete语句都是比较麻烦的。

对于删除表中的数据,可以采取数据的方式实现,即将删除列中的数据直接更新为Null

例:通过ADO控件Update方法删除表中列的数据

?

PrivateSubCommand1_Click()

  

  Adodc1.Recordset.Update 1,Nul

  

EndSub

三、数据修改

在VB中修改数据,不仅仅可以采用执行SQL语句实现,也可以通过数据绑定控件进行数据的修改。数据绑定控件进行数据的修改采用的代码较少,特别是一些表格类数据绑定控件,不需要代码即可对数据进行修改,如DataGrid控件。

1.使用Update语句修改数据

Update语句通过ADO对象的Execute方法执行,达到对数据表中的数据进行修改

Cnn.Execute"Update 数据表名称 set 字段1=表达式1,字段2=表达式2……where子句"

在Update语句中可以使用where子句,还有符合条件的数据可执行修改操作,如果使用where指定条件,则Update语句会修改表中的全部数据

通常都是在批量更改时采用该语句,这种方法要比ADO的Update方法逐条地修改数据方便,但VB中一些表格控件可以不需要代码而直观实现数据的批量修改

2.表格数据绑定控件修改数据

在VB中采用表格数据绑定修改控件修改数据,基本上不需要代码,只需要设置表格数据绑定控件的一些属性即可实现,例如DataGrid控件,将其绑定到相应的数据源上,再设置其AllowUpdate属性为True,即可实现表格中修改的数据及时更新到数据库中

该属性可返回或设置一个值,指示用户能否修改DataGrid控件中的数据,语法:

DataGrid.AllowUpdate=布尔表达式

例:使用DataGrid控件修改数据

?

PrivateSubForm_Load()

  

   '设置连接字符串

  

 Adodc1.ConnectionString="Provider=SQLOLEDB;Persist Security Info=True;User ID=sa;Initial Catalog=student;Data Source=."

  

  '设定数据源

  

Adodc1.CommandType=adcmdText

  

Adodc1.RecordSource="select * from student_Info order by student_ID"

  

  '为DataGrid控件绑定数据源

  

SetDataGrid1.DataSouce=Adodc1

  

  '允许DataGrid1控件更新表中的数据

  

DataGrid1.AllowUpdate=True

  

EndSub

3.使用文本数据绑定控件修改数据

与DataGrid控件不同,文本类控件绑定数据后在修改数据时,由于所修改的数据只是写入在缓存当中,所以需要通过ADO的Update方法提交修改,另外,ADO还提供CancelUpdate方法,用此方法来撤销在使用Update方法前对数据所作的修改,在程序中使用CancelUpdate方法的代码如下:Adodc1.Recordset.CancelUpdate

扩展:vb6.0xmlhttp操作视频 / vb6.0 操作word / vb6.0操作excel

例:使用文本控件绑定数据并进行修改数据

?

'设置连接字符串与数据源,并绑定数据源

  

PrivateSubForm_Load()

  

 Adodc1.ConnectiongString="Provider=SQLOLEDB;Persist Security Info=True;User ID=sa;Initial Catalog=student;Data Source=."

  

Adodc1.RecordSource="select * from Course_Info"

  

SetText1.DataSource=Adodc1

  

Text1.DataField="课程名称"

  

EndSub

  

'提交保存数据

  

PrivateSubCommad1_Click()

  

 Adodc1.Recordset.Update

  

 MsgBox"保存成功!",vbOKOnly,"提示"

  

EndSub

  

  '撤销数据修改

  

PrivateSubCommand2_Click()

  

 Adodc1.Recordset.CancelUpdate

  

EndSub

四、数据查询

VB中查询数据库中的数据不仅可以通过执行SQL语句实现,也可以通过控件或对(如ADO)限定检索数据的条件来实现。

1.简单查询

简单查询可以通过Select语句限定数据源来实现。在Select语句中使用关键字、子句等实现。

下面对几种常用的简单查询进行介绍:

1)使用AS改变查询数据的列名

多数情况下,在SQL Server中创建表的字段都是以英文命名的,这些字段名在显示时给一般用户带来不便,那么可以在查询中采用AS来改变字段在显示时的名称。

例:使用AS改变查询数据的列名

?

PrivateSubcmdModify_Click()

  

     Adodc.RecordSource="select ID as 编号,Mailbox as 电子邮箱 from Mail_Info"

  

     Adodc.Refresh

  

EndSub

2)计算查询的结果

VB编写的程序中,往往需要将数据库中的数据进行计算,以便获得所需的数值。

通过在查询语句中使用算术运算符,在配合AS为计算出的字段设置名称,即可在查询结果中显示计算得到的数据。

例:计算查询的结果

?

PrivateSubcmdAcount_Click()

  

    Adodc.RecordSource="select 卡号,每小时上机费用,上机时间(每小时上机费用*上机时间)as 收费金额 from 学生上机收费金额表"

  

    Adodc.Refresh

  

EndSub

3)比较条件查询

在查询语句中可以包含比较运算,常用的比较运算符有=、<、>、<>、!>、!<、>=、<=、!=。使用这些运算符连接表达式形成一个比较条件,系统将根绝该查询条件返回的布尔值来判断数据是否满足该查询条件,只有满足条件的数据才会出现在查询的结果集中。

这些比较条件在查询语句中需要与where子句连用,但是VB提供Filter属性为Recordset中的数据指定筛选条件。该属性根据条件可选择性地屏蔽Recordset对象中的记录,该属性语法如下:Recordset.Filter=字符串

例:通过Filter属性实现比较条件查询

?

'设置连接、数据源与初始化程序

  

PrivateSubForm_Load()

  

     Adodc.connectionString="provider=SQLOLEDB;Data Source=.;Initail CataLog=student;UID=sa;PWD=123456"

  

     Adodc.Recordset="select stuID as 学号,stuname as 姓名,stuage as 年龄 from student_info"

  

     set DataGrid.DataSource=Adodc

  

     Combo1.AddItem"学号"

扩展:vb6.0xmlhttp操作视频 / vb6.0 操作word / vb6.0操作excel

  

     Combo1.AddItem"姓名"

  

     Combo1.AddItem"年龄"

  

     Combo2.AddItem">"

  

     Combo2.AddItem"<"

  

     Combo2.AddItem">="

  

     Combo2.AddItem"<="

  

     Combo2.AddItem"="

  

EndSub

  

   

  

'查询信息以及错误处

  

PrivateSubcmdQuery_Click()

  

      OnErrorResumeNext

  

      IfCombo1.text<>""and Combo2.text<>""then

  

             Adodc.Recordset.Filter=Adodc.Recordset.Fields(Combo1.ListIndex).Name & Combo2.Text &""& Trim(txtQuery.text) &""

  

      EndIf

  

      IfErr then Msgbox"请输入正确信息!",vbOKOnly,"警告"

  

EndSub

2.模糊查询

模糊查询是通过在VB中查询与所给查询内容相似的信息。

实现模糊查询可以通过执行SQL语句中的Like语句实现。Like语句用来确定给定的数据信息是否与指定的模式匹配。(模式可以包含常规字符和通配符字符。)Like也可以在ADO的Filter属性中使用。

下面介绍在Filter属性中使用Like与通配符的几种方法:

vb sql VB6.0操作SQL Server——增删改查

3.日期和时间查询

对日期和时间的数据查询,可以通过VB中的ADO的Filter属性限定筛选条件,或执行查询SQL语句实现。

1)查询指定日期时间的数据

在SQL语句中,可以使用运算符(>、=、<、Like等)查询日期/时间类型的数据。日期时间字符串的书写要符合一定的格式,例如“2012-08-13 0:00:01”。

例:查询指定日期时间的数据

?

PrivateSubcmdQuery_Click()

  

       OnErrorResumeNext

  

       Adodc.Recordset.Filter="出生日期="' & Trim(txtYear.Text) & "-" & Trim(txtMonth.Text) & "-" & Trim(txtDay.Text) & "0:00:00"'

  

       IfErr then Msgbox"请输入正确信息!",vbOKOnly,"错误"

  

Endsub

  

   

  

PrivateSubForm_Load()

  

       Adodc.ConnectonString="Provider=SQLOLEDB;Data Source=.;Initail Catalog=student;UID=sa;PWD=123456"

  

       Adodc.RecordSource="select stuID as 学号,stuName as 姓名,stuAge as 年龄,stuBornDate as 出生日期 from Student_Info"

  

       set DataGrid.DataSource=Adodc

  

EndSub

2)分别按年、月、日等查询数据

在设计数据库系统应用程序时,往往需要查询某一年、某个月或某一天的数据。如果采用指定日期时间的方式来查询,虽然可以实现,但是过程是很麻烦的。这时可以采用Year、Month、Day等函数,对数据库中日期时间数据提取年、月、日等相关信息;然后结合指定日期时间的查询方式,即可方便地查询到某一年、某个月或者某一天的数据。

扩展:vb6.0xmlhttp操作视频 / vb6.0 操作word / vb6.0操作excel

例:按年、月、日等查询数据

?

PrivateSubcmdQuery_Click()

  

    Dimstc as string

  

    OnErrorResumeNext

  

    SelectCasecombo1.ListIndex

  

    Case0

  

          stc="year"

    Case1

  

          stc="month"

  

    Case2

  

          stc="day"

  

    EndSelect

  

    Adodc.RecordSource="select stuID as 学号,stuName as 姓名,stuAge as 年龄,stuBornDate as 出生日期 from Student_Info where "& stc &"(stuBornDate)='"& txtQuery.Text &"'"

  

    Adodc.Refresh

  

    IfErr then Msgbox"请输入正确信息!",vbOKOnly,"错误"\

  

EndSub

  

   

  

PrivateSubForm_Load()

  

       Adodc.ConnectonString="Provider=SQLOLEDB;Data Source=.;Initail Catalog=student;UID=sa;PWD=123456"

  

       Adodc.RecordSource="select stuID as 学号,stuName as 姓名,stuAge as 年龄,stuBornDate as 出生日期 from Student_Info"

  

       set DataGrid.DataSource=Adodc

  

       combo1.AddItem"按年"

  

       combo1.AddItem"按月"

  

       combo1.AddItem"按日"

  

EndSub

扩展:vb6.0xmlhttp操作视频 / vb6.0 操作word / vb6.0操作excel

四 : 数据增删改

增加protected void addadmin(string name, string pwd){SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["conn"].ConnectionString);SqlCommand com = new SqlCommand("insert into users(username,password,status) values (@name,@pwd,@status)", con);com.Parameters.AddWithValue("@status", 1);com.Parameters.AddWithValue("@pwd", pwd);com.Parameters.AddWithValue("@name", name);try{com.Connection.Open();com.ExecuteNonQuery();Response.Write("<script>alert('添加成功!');</script>");Response.Write("<script type='text/javascript'>location.href='userdeal.aspx'</script>");}catch{throw new Exception();}finally{com.Connection.Close();}}修改protected void update_Click(object sender, EventArgs e){ string strFileName = this.FileUpload1.PostedFile.FileName;//文件全名string strFileType = this.FileUpload1.PostedFile.ContentType;//文件类型string strHZ = System.IO.Path.GetExtension(strFileName);//获取文件的后缀 string strNewName = DateTime.Now.ToString("yyyyMMddHHmmss") + strHZ;this.FileUpload1.PostedFile.SaveAs(Server.MapPath("imgs" + strNewName));SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["conn"].ConnectionString);SqlCommand com = new SqlCommand("update PRODUCT set serialNumber=@serialNumber,name=@name,brand=@brand,model=@model,price=@price,picture=@picture,description=@description where productID="+Request.QueryString["productID"] , con);com.Parameters.Add("@serialNumber", SqlDbType.VarChar);com.Parameters["@serialNumber"].Value = Txtid.Text.Trim();com.Parameters.Add("@name", SqlDbType.VarChar);com.Parameters["@name"].Value = Txtname.Text.Trim();com.Parameters.Add("@brand", SqlDbType.VarChar);com.Parameters["@brand"].Value = Txtsb.Text.Trim();com.Parameters.Add("@model", SqlDbType.VarChar);com.Parameters["@model"].Value = Txtsh.Text.Trim();com.Parameters.Add("@price", SqlDbType.Decimal);com.Parameters["@price"].Value = Convert.ToDecimal(Txtvalue.Text.Trim());if (strFileName == ""){com.Parameters.Add("@picture", SqlDbType.VarChar);com.Parameters["@picture"].Value = FileUpload1.ResolveClientUrl(Image1.ImageUrl).Replace("imgs","");}else{com.Parameters.Add("@picture", SqlDbType.VarChar);

parameters.add 数据增删改

com.Parameters["@picture"].Value = strNewName;}com.Parameters.Add("@description", SqlDbType.VarChar);com.Parameters["@description"].Value = Txtcontrout.Text.Trim();try{com.Connection.Open();com.ExecuteNonQuery();Response.Write("<script>alert('数据修改成功!');</script>");Response.Write("<script>location.href='Goodsdeal.aspx'</script>");}catch{throw new Exception();}finally{com.Connection.Close(); }删除protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e){if (e.CommandName == "Del"){SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["conn"].ConnectionString);SqlCommand com = new SqlCommand("delete from product where id="+e.CommandArgument.ToString(), con);Page.ClientScript.RegisterStartupScript(this.GetType(), "", "alert('删除成功!')", true);BindData();}}绑定protected void show(){SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["conn"].ConnectionString);SqlDataAdapter da = new SqlDataAdapter("select * from PRODUCT",con);DataSet set = new DataSet();da.Fill(set,"tab");pds.AllowPaging = true;//允许分页pds.PageSize = 5;//每页的记录数if (Request.QueryString["index"] != null){pds.CurrentPageIndex = Convert.ToInt32(Request.QueryString["index"].ToString());}else{pds.CurrentPageIndex = 0;}pds.DataSource = set.Tables["tab"].DefaultView;this.Repeater1.DataSource = pds;this.Repeater1.DataBind();}}

61阅读提醒您本文地址:

本文标题:php增删改查代码-PHP正则删除html代码中a标签并保留标签内容的方法 原创
本文地址: http://www.61k.com/1084160.html

61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1