www.thiagomachado.com.br". Hoje, vai saber...
quinta-feira, 29 de março de 2001
Resgatando Dados da CHECKBOX
www.thiagomachado.com.br". Hoje, vai saber...
Marcadores: ASP4Developers
segunda-feira, 26 de março de 2001
Testando Teclas
Para validar um campo numérico faça o seguinte:
Coloque o script:
function testa_tecla() {
if (event.keyCode == '13') //Testa se foi digitado Enter
{
}
else if (event.keyCode < '48' || event.keyCode > '58') //Testa se não foram digitados números
{
alert('Digite apenas números!');
event.keyCode = '127';
}
}
Após, no campo desejado adicione o código:
<input type="text" name="text1" OnKeyPress="testa_tecla();">
Para o evento do ENTER você pode personalizar e colocar o evento que achar necessário.
Marcadores: ASP4Developers
Função que resolve o problema das aspas simples nas strings de SQL
Esta função é bem simples e útil. Basta usá-la com todo e qualquer campo que possa conter aspas simples ('), na hora de passá-lo para o banco de dados. Veja:
<%
Function Plic(ByVal strTexto)
If InStr(strTexto, Chr(39)) Then
Plic = Chr(39) & Replace(strTexto, Chr(39), _
Chr(39) & Chr(39)) & Chr(39)
Else
Plic = Chr(39) & strTexto & Chr(39)
End If
End Function
%>
Pra usar:
strSQL = "Select * From Tabela Where Nome = " & Plic(Nome)
Ou, com like:
strSQL = "Select * From Tabela Where Nome Like " & Plic("%" & Nome & "%")
E é só... :^))
Marcadores: ASP4Developers
quarta-feira, 21 de março de 2001
Paginação no ASP.NET com VB
O exemplo abaixo é a implementação da paginação em ASP.NET, mas diferentemente do código postado na área de C#, este é está escrito em VB.
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.ADO" %>
<%@ Page Language="VB" Debug="true" %>
<script language="VB" runat="server">
Sub Page_Load(sender As Object, e As EventArgs)
BindGrid
End Sub
Sub MyDataGrid_Page(sender As Object, e As DataGridPageChangedEventArgs)
startIndex = MyDataGrid.CurrentPageIndex * MyDataGrid.PageSize
BindGrid
ShowStats
End Sub
Sub BindGrid()
Dim DS As DataSet
Dim MyConnection As ADOConnection
Dim MyCommand As ADODataSetCommand
MyConnection = New ADOConnection("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("data.mdb"))
MyCommand = New ADODataSetCommand("select * from Links", MyConnection)
DS = new DataSet()
MyCommand.FillDataSet(ds, "Links")
MyDataGrid.DataSource=ds.Tables("Links").DefaultView
MyDataGrid.DataBind()
ShowStats
End Sub
Sub PagerButtonClick(sender As Object, e As EventArgs)
'used by external paging UI
Dim arg As String = sender.CommandArgument
Select arg
Case "next":
If (MyDataGrid.CurrentPageIndex < (MyDataGrid.PageCount - 1)) Then
MyDataGrid.CurrentPageIndex += 1
End If
Case "prev":
If (MyDataGrid.CurrentPageIndex > 0) Then
MyDataGrid.CurrentPageIndex -= 1
End If
Case "last":
MyDataGrid.CurrentPageIndex = (MyDataGrid.PageCount - 1)
Case Else:
'page number
MyDataGrid.CurrentPageIndex = arg.ToInt32()
End Select
BindGrid
ShowStats
End Sub
Sub ShowStats()
lblCurrentIndex.Text = "CurrentPageIndex is " & MyDataGrid.CurrentPageIndex
lblPageCount.Text = "PageCount is " & MyDataGrid.PageCount
End Sub
</script>
<form runat="server">
<ASP:DataGrid id="MyDataGrid" runat="server"
AllowPaging="True"
PageSize="5"
PageCount="1"
PagerStyle-Mode="NumericPages"
PagerStyle-HorizontalAlign="Right"
OnPageIndexChanged="MyDataGrid_Page"
BorderColor="black"
BorderWidth="1"
GridLines="Both"
CellPadding="3"
CellSpacing="0"
Font-Name="Verdana"
Font-Size="8pt"
HeaderStyle-BackColor="#aaaadd"
AlternatingItemStyle-BackColor="#eeeeee"
/>
</form>
<p>
<asp:LinkButton id="btnFirst" runat="server"
Text="Go to the first page"
CommandArgument="0"
ForeColor="navy"
Font-Name="verdana" Font-size="8pt"
OnClick="PagerButtonClick"
/>
<asp:LinkButton id="btnPrev" runat="server"
Text="Previous page"
CommandArgument="prev"
ForeColor="navy"
Font-Name="verdana" Font-size="8pt"
OnClick="PagerButtonClick"
/>
<asp:LinkButton id="btnNext" runat="server"
Text="Next page"
CommandArgument="next"
ForeColor="navy"
Font-Name="verdana" Font-size="8pt"
OnClick="PagerButtonClick"
/>
<asp:LinkButton id="btnLast" runat="server"
Text="Go to the last page"
CommandArgument="last"
ForeColor="navy"
Font-Name="verdana" Font-size="8pt"
OnClick="PagerButtonClick"
/>
<p>
<table bgcolor="#eeeeee" cellpadding="6"><tr><td nowrap><font face="Verdana" size="-2">
<asp:Label id="lblCurrentIndex" runat="server" /><br>
<asp:Label id="lblPageCount" runat="server" /><br>
Marcadores: ASP4Developers
terça-feira, 20 de março de 2001
FullScreen com Barra de tarefas
Espero que esta postagem possa ser útil...
Bom, para começar, deve-se abrir uma janela simples (sem status, sem endereço, sem rolagem, etc) e sem nenhuma informação e NÃO DEVE CONTER FRAMES. Basta apenas escrever "Carregando...", se preferir.
Para fazer isso use a função window.open() com a página criada.
OBS.: esta página ainda não é a sua Home Page.
Restrição: Esta janela tem que ter top=0 e left=0, e tamanho 798 x 545.
Aí vc diz: "Mas AspTeco, desta forma eu não sumi com a barra de títulos e as bordas feias da janela!"
Então eu digo: "Calma, o segredo vem agora!"
Nesta página em branco (ou com o "Carregando...") deve conter o seguinte código:
function window_onload() {
window.moveTo(-5,-24); // aqui sumimos com a barra de títulos
// e com a borda esquerda
window.resizeBy(1,26); // aqui esticamos a parte inferior e
// escondemos a borda direita
window.location.href = "default.htm" // aqui vc chama
// a sua Home Page (pode conter frames)
}
Na tag <BODY> da "Carregando...", coloque isto:
<BODY onload="return window_onload()">
Com este grupo de códigos, você verá que quase nada é impossível na computação! Você acabou de abrir uma janela fullscreen com barra de tarefas!
Visitem http://www.aguaviva.mus.br e vejam como ficou.
Marcadores: ASP4Developers
segunda-feira, 19 de março de 2001
Manual de sobrevivência
Este texto , de suposta autoria de Willian Shakespeare, chegou na minha caixa postal há algum tempo e não tem nada a ver com ASP. No entanto, ele reflete muito do que eu pensei quando comecei a desenvolver o ASP4D e gostaria de compartilhar com os amigos. Clique aqui.
Marcadores: ASP4Developers
sexta-feira, 16 de março de 2001
Ordenação de arrays (BubbleSort)
Para ordenar uma matriz, use a função abaixo.
Function BubbleSort( matriz )
dim i, j, aux
For i = 0 To UBound(matriz)
For j = 0 To UBound(matriz)
If( matriz(i) < matriz(j) ) Then
aux = matriz(j)
matriz(j) = matriz(i)
matriz(i) = aux
End If
Next
Next
BubbleSort = matriz
End Function
Este código é destinado para organizar "matrizes pequenas, onde os itens já estejam proximamente ordenados" e não é recomendada para matrizes muito grandes. Nestas, você pode usar o algoritmo de QuickSort, encontrado em http://www.4guysfromrolla.com/webtech/012799-2.shtml
Agradecimentos à Wilker Bezerra Silva pelos apontamentos e correções.
Marcadores: ASP4Developers
Checando os recursos do browser
<%
dim bc
Set bc = Server.CreateObject("MSWC.BrowserType")
if bc.ActiveXControls and bc.cookies and bc.frames and _
bc.Javaapplets and bc.Javascript and bc.Tables and _
bc.Vbscript then
response.redirect "principal.asp"
response.end
end if
%>
<body>
<table border=1 align=center>
<tr>
<th>Característica</th>
<th>Disponível?</th>
</tr>
<tr>
<td>ActiveX Controls</td>
<td align=center><%= iif( bc.ActiveXControls, "Sim", "<b>NAO</b>" ) %></td>
</tr>
<tr>
<td>Background Sounds</td>
<td align=center><%= iif( bc.Backgroundsounds, "Sim", "<b>NAO</b>" ) %></td>
</tr>
<tr>
<td>Beta Specifies</td>
<td align=center><%= iif( bc.BetaSpecifies, "<b>SIM</b>", "Nao" ) %></td>
</tr>
<tr>
<td>Cdf Specifies</td>
<td align=center><%= iif( bc.CdfSpecifies, "Sim", "Nao" ) %></td>
</tr>
<tr>
<td>Browser</td>
<td align=center><%= bc.Browser & " " & bc.version & " " & bc.Platform %></td>
</tr>
<tr>
<td>Cookies</td>
<td align=center><%= iif( bc.Cookies, "Sim", "<b>NAO</b>" ) %></td>
</tr>
<tr>
<td>Frames</td>
<td align=center><%= iif( bc.Frames, "Sim", "<b>NAO</b>" ) %></td>
</tr>
<tr>
<td>Java Applets</td>
<td align=center><%= iif( bc.Javaapplets, "Sim", "<b>NAO</b>" ) %></td>
</tr>
<tr>
<td>JavaScript</td>
<td align=center><%= iif( bc.Javascript, "Sim", "<b>NAO</b>" ) %></td>
</tr>
<tr>
<td>VBScript</td>
<td align=center><%= iif( bc.Vbscript, "Sim", "<b>NAO</b>" ) %></td>
</tr>
<tr>
<td>Tables</td>
<td align=center><%= iif( bc.Tables, "Sim", "<b>NAO</b>" ) %></td>
</tr>
</table>
</body>
</html><%
function iif( condicao, valor1, valor2 )
if condicao then iif = valor1 else iif = valor2
end function
%>
Marcadores: ASP4Developers
quinta-feira, 15 de março de 2001
Liste os arquivos de um dir com nome, data, tamanho e etc
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0064)http://www.asp101.com/samples/download.asp?file=dir%5Flist%2Easp -->
<HTML>
<HEAD>
<META content="text/html; charset=windows-1252" http-equiv=Content-Type>
<META content="MSHTML 5.00.2614.3500" name=GENERATOR>
<title>[Ricardo - ASP]</title>
<style type="text/css">
<!--
a { text-decoration: none}
-->
</style>
</HEAD>
<BODY bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<div align="center"><font face="Tahoma" size="2"><b><%
Function ShowImageForType(strName)
Dim strTemp
strTemp = strName
If strTemp <> "dir" Then
strTemp = LCase(Right(strTemp, Len(strTemp) - InStrRev(strTemp, ".", -1, 1)))
End If
Select Case strTemp
Case "asp"
strTemp = "asp"
Case "dir"
strTemp = "dir"
Case "htm", "html"
strTemp = "htm"
Case "gif", "jpg"
strTemp = "img"
Case "txt"
strTemp = "txt"
Case Else
strTemp = "misc"
End Select
strTemp = "<IMG SRC=""imagens/dir_" & strTemp & ".gif"" WIDTH=16 HEIGHT=16 BORDER=0>"
ShowImageForType = strTemp
End Function
%> <%
Dim strPath 'Path of directory to show
Dim objFSO 'FileSystemObject variable
Dim objFolder 'Folder variable
Dim objItem 'Variable used to loop through the contents of the folder
If Request.Form("Caminho") = "" Then
strPath = "/diretoriopadrao"
Else
strPath = Request.Form("Caminho")
End If
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(Server.MapPath(strPath))
%> Conteúdo de <%= strPath %></b></font> <BR>
<BR>
<TABLE BORDER="1" CELLSPACING="0" CELLPADDING="2" BORDERCOLOR="#FF6633" width="750">
<TR BGCOLOR="#FF6633">
<TD align="center" valign="middle" height="45? width="72"><font color="#FFFFFF" face="Tahoma" size="2"><B>Nome:</B></font></TD>
<TD align="center" valign="middle" height="45" width="115"><font color="#FFFFFF" face="Tahoma" size="2"><B>Tamanho
(kb):</B></font></TD>
<TD align="center" valign="middle" height="45" width="185"><font color="#FFFFFF" face="Tahoma" size="2"><B>Data
Criação:</B></font></TD>
<TD align="center" valign="middle" height="45" width="126"><font face="Tahoma" size="2" color="#FFFFFF"><b>Ultima
Modificação:</b></font></TD>
<TD valign="middle" align="center" height="45" width="220"><font color="#FFFFFF" face="Tahoma" size="2"><B>Tipo:</B></font></TD>
</TR>
<%
For Each objItem In objFolder.SubFolders
If InStr(1, objItem, "_vti", 1) = 0 Then
%>
<TR BGCOLOR="#FFFFFF">
<TD ALIGN="left" width="72" ><font face="Tahoma" size="2" color="#000000"><%= ShowImageForType("dir") %> <A HREF="<%= strPath & "/" & objItem.Name %>"><%= objItem.Name %></A></font></TD>
<TD ALIGN="right" width="115"><font face="Tahoma" size="2" color="#000000"><%= objItem.Size/1024 %></font></TD>
<TD ALIGN="left" width="185" ><font face="Tahoma" size="2" color="#000000"><%= objItem.DateCreated %></font></TD>
<TD ALIGN="left" width="126" >
<div align="center"><font face="Tahoma" size="2" color="#000000"><%= objItem.DateLastModified
%></font></div>
</TD>
<TD ALIGN="left" width="220" ><font face="Tahoma" size="2" color="#000000"><%= objItem.Type %></font></TD>
</TR>
<%
End If
Next
For Each objItem In objFolder.Files
%>
<TR BGCOLOR="#FFFFFF">
<TD font color="#FFFFFF" face="Tahoma" size="2" width="72"><font face="Tahoma" size="2" color="#000000"><%= ShowImageForType(objItem.Name) %> <A HREF="<%= strPath & "/" & objItem.Name %>"><%= objItem.Name %></A></font></TD>
<TD font color="#FFFFFF" face="Tahoma" size="2" ALIGN="right" width="115"><font face="Tahoma" size="2" color="#000000"><%= objItem.Size/1024 %></font></TD>
<TD color="#FFFFFF" face="Tahoma" size="2" ALIGN="left" width="185" ><font face="Tahoma" size="2" color="#000000"><%= objItem.DateCreated %></font></TD>
<TD color="#FFFFFF" face="Tahoma" size="2" ALIGN="left" width="126" >
<div align="center"><font face="Tahoma" size="2" color="#000000"><%= objItem.DateLastModified
%></font></div>
</TD>
<TD color="#FFFFFF" face="Tahoma" size="2" ALIGN="left" width="220" ><font face="Tahoma" size="2" color="#000000"><%= objItem.Type %></font></TD>
</TR>
<%
Next
%>
</TABLE>
<br>
<form method="post" action="dir_list.asp" name="form">
<input type="text" name="caminho">
<input type="submit" name="Submit" value="Ir">
<br>
<br>
<br>
</form>
</div>
</BODY></HTML>
Marcadores: ASP4Developers
Veja os drives do servidor
<%
'*************************************************************
'* Nome do Script: DiskInfo - v1.0 *
'* Arquivo: diskinfo.asp *
'* Descrição: Mostra informações de utilização de discos *
'* no servidor *
'* Autor: Cass Surek - cs@master.com.br *
'* Data: 24/07/1999 *
'* Obs: - Modifique as configurações para suas necessidades *
'* - Modifique os campos do arquivo texto se preciso, *
'* na primeira linha do txt *
'* *
'* -Use o script à vontade, só mande um e-mail para *
'* que eu saiba que o script foi útil. :-) *
'* -Mande suas sugestões para melhoria! *
'* -Por favor, não retire este cabeçalho. *
'*************************************************************
Option Explicit
Response.Buffer = True
Dim ObjFSO, ObjDrivesCol, ObjDrive
Dim Num_Drives, Drive
Dim i, item, Pronto, Tipo
Dim Reg_Estilo1, Reg_Estilo2, Reg_Estilo3, Reg_Estilo4
Dim Tab_Larg, Tab_Bord, Tab_Cab_Cor, Tab_CabT_Cor, Tab_Reg_Cor, Tab_RegT_Cor, Tab_Al
Dim Tab_Cell_Spacing, Tab_Cell_Padding, Det_Scr
'*****************
'* Configurações *
'*****************
'Tabela
'-------------
'Qual é a largura da Tabela? (em pixels, ex: 580 ou porcentagem, ex: 90%)
Tab_Larg = "300"
'Qual é a borda da Tabela? (em pixels)
Tab_Bord = 0
'Qual é a cor do cabeçalho da Tabela? (em hexadecimal, #000000 = Preto, #FFFFFF = Branco)
Tab_Cab_Cor = "#0000FF"
'Qual é a cor do texto do cabeçalho da Tabela? (em hexadecimal, #000000 = Preto, #FFFFFF = Branco)
Tab_CabT_Cor = "#FFFFFF"
'Qual é o espaçamento entre células da tabela? (em pixels)
Tab_Cell_Spacing = 1
'Qual é o espaçamento entre a borda da célula e o texto? (em pixels)
Tab_Cell_Padding = 4
'Extras
'------
'Mostrar Título do Script? <Sim/Não>
Det_Scr = "Sim"
'***********
'* Funções *
'***********
Public Function Erro(mensagem)
Response.Write "<p><strong><font face=" & Chr(34) & "Arial" & Chr(34) & _
"color=" & Chr(34) & "#0000FF" & Chr(34) & "> " & _
"Erro!!! " & mensagem & "</font></strong></p><br>"
End Function
Public Function Cabeca()
%>
<center>
<font face="Arial" Size="+3" color="#0000FF">Script DiskInfo <br></font>
<font face="Arial"><small>Cass Surek - <a href="mailto:cs@master.com.br">cs@master.com.br</a><br></small></font>
<font face="Arial"><small>Versão 1.0 - última alteração feita em 25/07/1999</small></font>
<br><br>
</center>
<%
End Function
'**********
'* Início *
'**********
Reg_Estilo1 = "<tr><td" & " width=" & Chr(34) & "50%" & Chr(34) & " bgcolor=" & Chr(34) & "#999999" & Chr(34) & "><font face=" & Chr(34) & "Arial" & Chr(34) & "color=" & Chr(34) & "#000000" & Chr(34) & "><small><strong>"
Reg_Estilo2 = "</td>"
Reg_Estilo3 = "<td" & " width=" & Chr(34) & "50%" & Chr(34) & " bgcolor=" & Chr(34) & "#444444" & Chr(34) & "><font width=" & Chr(34) & "80%" & Chr(34) & "face=" & Chr(34) & "Arial" & Chr(34) & "color=" & Chr(34) & "#FFFFFF" & Chr(34) & "><small>"
Reg_Estilo4 = "</strong></small></td></tr>"
Set ObjFSO = CreateObject("Scripting.FileSystemObject")
Set ObjDrivesCol = ObjFSO.Drives
If Det_Scr = "Sim" then
Call Cabeca()
End If
%><table border="<% = Tab_Bord %>" width="<% = Tab_Larg %>" align="center" cellpadding="<% = Tab_Cell_Padding %>" cellspacing="1">
<tr><td bgcolor="<% = Tab_Cab_Cor %>" colspan="2"><font face="Arial" color="<% = Tab_CabT_Cor %>"><strong><small>
Geral</strong><br>
</strong></small></td></tr>
<%
Response.Write Reg_Estilo1 & "Número de Drives:" & Reg_Estilo2 & Reg_Estilo3 & ObjDrivesCol.count & Reg_Estilo4
%>
</table><br><br>
<%
For Each Drive in ObjDrivesCol
%><table border="<% = Tab_Bord %>" width="<% = Tab_Larg %>" align="center" cellpadding="<% = Tab_Cell_Padding %>" cellspacing="1"><%
%><tr><td bgcolor="<% = Tab_Cab_Cor %>" colspan="2"><font face="Arial" color="<% = Tab_CabT_Cor %>"><strong><small><%
Response.Write "Drive " & Drive.DriveLetter & "</strong><br>"
%></strong></small></td></tr><%
'Nome do Volume
If Drive.IsReady = True then
Response.Write Reg_Estilo1 & "Nome:" & Reg_Estilo2 & Reg_Estilo3 & Drive.VolumeName & Reg_Estilo4
End If
'Número de Série
If Drive.IsReady = True then
Response.Write Reg_Estilo1 & "Nº de Série:" & Reg_Estilo2 & Reg_Estilo3 & Drive.SerialNumber & Reg_Estilo4
End If
'Drive Pronto?
If Drive.Isready then
Pronto = "Sim"
Else
Pronto = "Não"
End If
Response.Write Reg_Estilo1 & "Pronto?" & Reg_Estilo2 & Reg_Estilo3 & Pronto & Reg_Estilo4
'Tipo do Drive
Select Case Drive.DriveType
case 0
Tipo = "Desconhecido"
case 1
Tipo = "Removível"
case 2
Tipo = "Fixo"
case 3
Tipo = "Drive de Rede"
case 4
Tipo = "CD-ROM"
case 5
Tipo = "Drive Virtual (RAM)"
End Select
Response.Write Reg_Estilo1 & "Tipo do Drive:" & Reg_Estilo2 & Reg_Estilo3 & Tipo & Reg_Estilo4
'Espaço Total e Espaço Disponível
If Drive.Isready = True then
Response.Write Reg_Estilo1 & "Tamanho:" & Reg_Estilo2 & Reg_Estilo3 & FormatNumber(Drive.TotalSize / 1024, 0) & " Kb" & Reg_Estilo4
Response.Write Reg_Estilo1 & "Espaço Livre:" & Reg_Estilo2 & Reg_Estilo3 & FormatNumber(Drive.AvailableSpace / 1024, 0) & " Kb" & Reg_Estilo4
End If
'Sistema de Arquivo
If Drive.IsReady = True then
Response.Write Reg_Estilo1 & "Sistema de Arquivos:" & Reg_Estilo2 & Reg_Estilo3 & Drive.Filesystem & Reg_Estilo4
End If
%></table><br><br><%
Next
Set ObjFSO = Nothing
'*******
'* Fim *
'*******
%>
Marcadores: ASP4Developers
Página que exibe a lista Server.Variables
<html>
<head>
<title>Server Variables</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<div align="center"><b><font face="Tahoma" size="2">Lista das Variáveis do Servidor</font></b><br><br>
<table border=0 vspace="0" hspace="0" cellpadding="1" cellspacing="1" bgcolor="#FF6633" bordercolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF" width="400">
<tr bordercolor="#FFFFFF">
<td bgcolor="#CCCCCC"><font face="Tahoma" size="2"><b>Server Variable</b></font></td>
<td bgcolor="#FFFFFF"><font face="Tahoma" size="2"><b>Value</b></font></td>
</tr>
<% For Each Item In Request.ServerVariables %>
<tr>
<td bgcolor="#CCCCCC"><font size="2" face="Tahoma"><%= Item %></font></td>
<td bgcolor="#FFFFFF"><font size="2" face="Tahoma"><%= Request.ServerVariables(Item) %> </font></td>
</tr>
<% Next %>
</table>
</div>
</body>
</html>
Marcadores: ASP4Developers
Simples página para administrar SQL Server
<%
Set Conex = Server.CreateObject("ADODB.Connection")
Set Table = Server.CreateObject("ADODB.RecordSet")
If Request.Form("SQL")<>"" Then
SQL = Request.Form("SQL")
Conex.Open "DSN", "LOGIN", "PASSWORD"
Set Table = Conex.Execute(SQL)
End If
' Agora basta usar seus conhecimentos em SQL como ALTER TABLE, CREATE TABLE, CREATE PROCEDURE e etc
'para administrar seu banco SQL Server
%>
<title>Execute - SQL </title>
<body bgcolor="#FFFFEA" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<form name="form" method="post" action="execute.asp">
<textarea name="SQL" wrap="VIRTUAL" rows="5" cols="100"></textarea>
<br>
<br>
<br>
<input type="submit" name="Executar" value=" Executar ">
</form>
Marcadores: ASP4Developers
Função para formatação de datas
Esta função é bem simples. Basta colocá-la num arquivo .INC e dar um "include" nas páginas onde você necessitar usá-la. Veja:
<%
Function PrepareDAT(datData, Forma)
Dim Dia, Mes, Ano, Hora, Minuto
Session.LCID = 1036
If Not IsDate(datData) Then
datData = Now()
End If
Dia = "" & Right("00" & Cstr(Day(datData)), 2)
Mes = "" & Right("00" & Cstr(Month(datData)), 2)
Ano = "" & Right("0000" & Cstr(Year(datData)), 4)
Hora = "" & Right("00" & Cstr(Hour(datData)), 2)
Minuto = "" & Right("00" & Cstr(Minute(datData)), 2)
If Forma = 1 Then
PrepareDAT = CStr(Trim(Dia) & "/" & Trim(Mes) & _
"/" & Trim(Ano) & " " & Trim(Hora) & _
":" & Trim(Minuto))
ElseIf Forma = 2 Then
PrepareDAT = CStr(Trim(Ano) & "/" & Trim(Mes) & _
"/" & Trim(Dia) & " " & Trim(Hora) & _
":" & Trim(Minuto))
End If
End Function
%>
Para usá-la é bem simples, veja:
Algo = PrepareDAT(SuaData, 1)
"Algo" passará a conter uma data no formato "dd/mm/yyyy hh:mm".
Algo = PrepareDAT(SuaData, 2)
"Algo" passará a conter uma data no formato "yyyy/mm/dd hh:mm".
terça-feira, 13 de março de 2001
Importação de dados - dBase e Access
O código abaixo exporta alguns arquivos .DBF do dbase para o Access, usando o nome dos arquivos como nomes de tabelas:
Dim File, Conn, RS
Const ReadOnly = True
BaseDir = "c:\windows\desktop"
DBFFile = BaseDir
NewMDBFile = BaseDir & "\zero.mdb"
Set Conn = CreateObject("DAO.DBEngine.35").Workspaces(0)
Set DBFConn = Conn.OpenDatabase( DBFFile, True, ReadOnly, "dBase III;")
Set NewMDB = Conn.CreateDatabase( NewMDBFile, ";LANGID=0x0409;CP=1252;COUNTRY=0" )
set NewMDB = Conn.OpenDatabase ( NewMDBFile )
For i = 0 To DBFConn.tabledefs.count - 1
response.write( "Merging database " & DBFConn.tabledefs(i).name & ".DBF..." )
NewMDB.Execute( "SELECT * INTO [" & DBFConn.tabledefs(i).name & "] " & _
" FROM [dBase III;DATABASE=" & BaseDir & ";].[" & DBFConn.tabledefs(i).name & "]" )
set rs = NewMDB.openRecordset( "SELECT count(*) from " & DBFConn.tabledefs(i).name )
response.write( "<b>" & rs( 0 ) & " records merged</b><br>" & chr( 13 ) )
rs.close
next
segunda-feira, 12 de março de 2001
Personalize seu UltraEdit
São muitos os desenvolvedores que usam o UltraEdit como editor de texto. Ele é simples, porém poderoso, e conte com diversos recursos que facilitam a vida do programador. Um deles, pouco conhecido é o sintax highlighting, que exibe o código em cores diferentes, o que facilita a visualização do fonte. Compilei uma lista com um passo-a-passo de como usar este recurso.
- Baixe o UltraEdit 32
- Acesse http://www.ultraedit.com/downloads/additional.html
- Selecione o "ASP (VBScript)" do primeiro drop-down
- Copie todo o conteúdo do arquivo em um chamado "sintaxe.txt", dentro do diretório onde o UltraEdit foi instalado
- Note que o Arquivo começa com "L10".
- Para incluir novas definições:
- Baixe uma nova definição (que tal a nova definição de XSL ?)
- Altere o "L10" para "L9" e cole o conteúdo no início do "sintaxe.txt"
- Altere no UltraEdit o arquivo de wordlist. Vá em Advanced, Configuration..., Sintax Hightlighting, "Full path name ..." e selecione o arquivo "sintaxe.txt" criado.
- Reinicie o UltraEdit e ...
... pronto! Agora os comandos do VBScript no ASP são identificados por cores, tornando a codificação mais agradável.
sexta-feira, 9 de março de 2001
Estrutura de Diretórios para um Projeto
- Documentação (Onde será armazenado os contratos, atas, Dicionário de dados, etc. Isso tudo caso você os utilize)
- Exemplos (Esta pasta pode ser utilizada para que você faça seus testes guarde exemplos, para que voc6e não repita os mesmos passos sempre que for fazer alguma manutenção no seu sistema)
- Imagens (Diretório onde serão armazenados todas as imagens utilizadas no seu projeto.
- Web (Diretório que simulará o ambiente de produção, sugiro que você defina como um diretório virtual no IIS)
- Componentes (Diretório onde os componentes utilizados no seu projeto fiquem armazenados)
- Misc (Diretório onde você pode colocar todos os arquivos não utilizados, assim como imagens interessantes, componentes para utilizar caso o escolhido não funcione, isso pode te ajudar a não ficar procurando arquivos na internet novamente)
- Dados (Caso você utilize banco de dados como o Access, você deve colocar a estrutura do seu banco de dados.)
- Layout (Caso sua você esteja desenvolvendo o design da sua aplicação, e precisa ficar algo bonito, este diretório poderá ser utilizado para armazenar propostas de layout, feitas com qualquer ferramenta, eu utilizo Ilustrator, Photoshop, somente para que você possa ter várias opções caso a primeira não funcione)
quinta-feira, 8 de março de 2001
Impressões iniciais sobre o ASP.NET
Baixei o .NET há alguns meses, louco para testar. Mas, depois de alguns testes, quando eu iria passar para a parte de desenvolvimento em C#, deparei-me com alguns problemas, que divulgo aqui no grupo:
- Sistema de Help:
O help que acompanha o .NET tem muita informação, mas tbém falta muita coisa. É claro que isso será adicionado nos próximos releases, mas faz falta. - XML:
A tecnologia que mais cresce em utilização e que irá ganhar cada vez mais espaço, já possui suporte no ASP.NET, mas é extremamente precário. Não há suporte a diversos recursos (xsl:param, xsl:variable, etc), o que torna inviável a utilização do XSLT. - C#:
Não programava em C há uns 6 anos e a habilidade fez falta. A linguagem é case sensitive (o que IMHO, nao tem muito sentido) tornando difícil a programação em editores de texto puro (UltraEdit, Notepad e afins). Provavelmente será desenvolvido um ambientes de programação com interface orientada a objetos, para facilitar o desenvolvimento. Quem ainda nao conhece nada sobre C#, recomendo visitar o site http://www.csharphelp.com/ - Debugging:
Uma ferramenta de depuração interativa faz falta (tipo um Microsoft Script Debugger). Mas as informações fornecidas quando se ativa a depuração de scripts é bastante completa e suficiente para encontrar os eventuais erros. - Data Grids:
Um recurso fascinante. Todos os processo mirabolantes para fazer paginação são coisa do passado, sendo feito agora de uma forma mais clara e simples (má notícia para a PamellaGridClass :) - Utilização de memória:
Ao que parece, o .NET possui alguns memory leaks, pois a memória usada por uma dll do sistema (que me escapa o nome agora) vai aumentado progressivamente. Em ambientes com menos de 128Mb, fica difícil trabalhar, mas acho que a MS pensou nisso: você pode definir a quantidade de memória usada por esta dll (em % da memória disponível) no config.web. Atingindo esse limite, a DLL é reiniciada, liberando espaço significativo. - Desenvolvimento de novas aplicações:
Já vão surgindo algumas aplicações reais feitas para o .NET. Um site ótimo, com shopping cart e afins, com código fonte é o http://www.ibuyspy.com/. Vale a visita. - Migrar ou não migrar ?
Essa dúvida logo vai surgir na mente dos desenvolvedores. Valem as considerações de sempre: vou obter ganhos ou será apenas uma curiosidade ? IMHO, apenas novas aplicações serão codificadas em ASP.NET e as atuais, que rodam bem sobre o ASP 3.0, continuarão recebendo manutenção corretivas e desenvolvimento de pequenos módulos. A MS deve soltar mais um ou dois betas, antes de anunciar a utilização comercial do .NET, portanto vale a pena ir estudando, mesmo que isso não implique em ganhos imediatos. - Onde testar os scripts que monto ?
Diversos sites já estão oferecendo hosting de sites com o Beta1 do .NET. O mais famoso deles é o www.brinkster.com (antigo eWebCity), mas mais opções podem ser encontradas em http://www.gotdotnet.com/host.aspx - Quero mais informações sobre .NET ! Onde procuro ?
Nós do ASP4Developers estaremos postando novos artigos regularmente, portanto visite-nos regularmente. Enquanto isso, recomendo inscrever-se no news de ASP.NET (news://microsoft.public.dotnet.framework.aspnet) da Microsoft (news.microsoft.com) Outras fontes de pesquisa são:
- http://msdn.microsoft.com/net/
- http://www.gotdotnet.com
[]s e bom desenvolvimento!