Jede Minute einen anderen Spruch erscheinen lassen

<!-- START ZITATE
(c) by: Steven Varco
See: www.tech-island.de.cx for many more usefull Scripts
(Bitte diesen Vermerk stehen lassen!)
-->
}
//-->
</SCRIPT>
<SCRIPT language="JavaScript">
</TD>
</TR>
</TABLE></CENTER>
<CENTER> </CENTER>
<CENTER><TABLE BORDER COLS=1 WIDTH="80%" BGCOLOR="#00CC00" >
<TR>
<TD>
<CENTER><B><U><FONT FACE="Square721 BT"><FONT COLOR="#FF0000"><FONT SIZE=+1>Spruch
der Minute:</FONT></FONT></FONT></U></B></CENTER>
 
<SCRIPT LANGUAGE="JavaScript">
function greeting()
{
var today = new Date();
var hrs = today.getHours();
var min = today.getMinutes();
document.writeln("<CENTER>");
document.writeln("");
document.writeln("<FONT SIZE="+1" COLOR="#ffffff"><B>");
if ( min <= 0)
document.write("Fussgänger:<br>ein Mann, der Frau und Tochter<br>aber nur zwei Autos hat.<br><i>- Anonym</i>");
else if (min <= 1) è (dieser Sruch erscheint in der 1. Minute)
document.write("Heiraten:<br>Heirate oder heirate nicht - <br>du wirdst es in jedem Fall bereuen.<br><i>- Sokrates</i>");
else if (min <=2) è (dieser Sruch erscheint in der 2. Minute)
 
document.write("Uhu:<br>Gefiederte Katze.<br><i>- Anonym</i>");
else if (min <=3)
document.write("Kluge Sprüche:<br>Es gibt so viele kluge Sprüche,<br>begreifen kann sie keiner.<br>Darum belass' ich's hier bei dem,<br>sonst wird dies auch noch einer.<br><i>- Simon Anderhub</i>");
è (Usw.für alle anderen Minuten)
document.writeln("</B></FONT><BR><BR>");
document.writeln("");
document.writeln("");
document.writeln("</CENTER>");
}
 
greeting();
</SCRIPT>
</TD>
</TR>
</TABLE></CENTER>
 
// -->
<!-- END ZITATE -->

Einfacher Passwortschutz

<!-- START PASSWORT
(c) by: Steven Varco
See: www.tech-island.com for many more usefull Scripts
(Bitte diesen Vermerk stehen lassen!)
-->
<!--
<Script language="JavaScript">
var passwort=prompt("Bitte geben Sie das Passwort ein","xxxxx");
document.write('<META HTTP-EQUIV="REFRESH" content="0;URL=' + passwort + '.html">') </Script>
<CENTER><H2>Uups, falsches Passwort ?
Dann gehen Sie bitte auf reload</H2></CENTER>
//-->
<!-- END PASSWORT -->

String-trenner Funktion

Diese Funktionen musst ich mal während meiner LAP arbeit machen, findet selber raus wozu sie gut sind… 😉

char <em>strtrenner(char </em>string, char trennzeichen, int element)
//Gibt den n'ten teil eines strings zurück den man mit dem Trennzeichen unterteilt hat,
//wobei n = element.
//Beispiel:  stringtrenner("123:456:789", ':', 2)  =   "456"
//Wenn das Attribut element eine höhere Zahl erhält als der String Elemente besitzt wird das letzte Element
//zurückgegeben.
{
	static char returnstring [50];
	unsigned int  i_count;
	int  i_elementcount;
	int  i_endstrpos;
	int  i_startstrpos;
	i_startstrpos = 0;
	i_elementcount = 0;
	for(i_count = 0; (i_count <= strlen(string)) && (element != i_elementcount); i_count++)
	{
		if((string[i_count] == trennzeichen) || (string[i_count] == 'n'))
		{
			i_elementcount++;
			if(i_elementcount < element)
			{
				i_startstrpos = i_count+1;
			}
		}
	}
	i_endstrpos = i_count-1;
	strncpy(returnstring, &string[i_startstrpos], i_endstrpos - i_startstrpos);
	returnstring[i_endstrpos-i_startstrpos] = '';
	return returnstring;
}

Zeitfunktionen

long zeitinh(char *string, char trenn1, char trenn2, char trenn3)
//wandelt einen String der eine Zeit enthält in hundertstelsekunden um.
//erwartet wird ein string im format: HH:mm:ss:hh wobei der erste Doppelpunkt dem
//trenn1, der zweite dem trenn2 und der dritte dem trenn3 entspricht.
//Vorsicht: die funktion strtrenner() wird benötigt
{
  long l_hundertstel;
  char s_temp[12];
  l_hundertstel = 0;
  strcpy(s_temp, strtrenner(string, trenn1, 1));
  printf("n%st", s_temp);
  l_hundertstel += atoi(s_temp) <em> 60 </em> 60 * 100;
  strcpy(s_temp, strtrenner(strtrenner(string, trenn1, 2), trenn2, 1));
  printf("%st", s_temp);
  l_hundertstel += atoi(s_temp) <em> 60 </em> 100;
  strcpy(s_temp, strtrenner(strtrenner(strtrenner(string, trenn1, 3), trenn2, 2), trenn3, 1));
  printf("%st", s_temp);
  l_hundertstel += atoi(s_temp)  * 100;
  strcpy(s_temp, strtrenner(strtrenner(strtrenner(string, trenn1, 4), trenn2, 3), trenn3, 2));
  printf("%sn", s_temp);
  l_hundertstel += atoi(s_temp);
  return l_hundertstel;
}
 
 
 
 
 
char *zeitformatieren(long zeitinh, char trenn1, char trenn2, char trenn3)
//gegenstueck zu zeitinh()
//formatiert die zeit mit den angegebenen Trennzeichen
//als eingabe wird die zeit in hundertstelsekunden erwartet
{
  long l_hundertstel;
  static char returnstring[20];
  int stunden;
  int minuten;
  int sekunden;
  int hundertstel;
  l_hundertstel = zeitinh;
 
  stunden = l_hundertstel / 100 / 60 / 60;
  l_hundertstel -= stunden <em> 100 </em> 60 * 60;
  minuten = l_hundertstel / 100 / 60;
  l_hundertstel -= minuten <em> 100 </em> 60;
  sekunden = l_hundertstel / 100;
  l_hundertstel -= sekunden *100;
  hundertstel = l_hundertstel;
 
  strcpy(returnstring, "                   ");
 
  if(stunden >= 10)
    itoa(stunden, returnstring, 10);
  else
    itoa(stunden, &returnstring[1], 10);
  returnstring[2] = trenn1;
 
  if(minuten >= 10)
    itoa(minuten, &returnstring[3], 10);
  else
  {
    returnstring[3] = '0';
    itoa(minuten, &returnstring[4], 10);
  }
  returnstring[5] = trenn2;
 
  if(sekunden >= 10)
    itoa(sekunden, &returnstring[6], 10);
  else
  {
    returnstring[6] = '0';
    itoa(sekunden, &returnstring[7], 10);
  }
  returnstring[8] = trenn3;
 
  if(hundertstel >= 10)
    itoa(hundertstel, &returnstring[9], 10);
  else
  {
    returnstring[9] = '0';
    itoa(hundertstel, &returnstring[10], 10);
  }
  return returnstring;
}

Spaltennamen einer DB auslesen

Dim RS
set RS = Server.CreateObject("ADODB.Recordset")
RS.ActiveConnection = Cnn
RS.Source = "SELECT * FROM Tabelle"
RS.Open
 
Dim Feld
FOR EACH Feld IN RS.Fields
   Response.Write Feld.Name & "<br>"
   Response.Write Feld.Type & "<br>"
Next
 
RS.Close
set RS = nothing
Cnn.Close
set Conn = nothing

".Type" gibt Dir dann auch den datentyp aus.

Tabellen einer Access Datenbank auflisten

Die einfachste Variante ist die Abfrage der Systemtabellen der Datenbank. Unter Access muss der
User "Administrator" Lesezugriff auf die Tabelle "MSysObjects" haben. Dies können Sie in Access 2000
unter "Extras -> Sicherheit -> Benutzer- und Gruppenberechtigungen" einstellen.

[listtables.asp]

<%
' --- SQL-String für Access
ListSQL = "SELECT name AS tablename FROM MSysObjects WHERE [type] = 1 AND [flags] = 0"
 
' --- SQL-String für Microsoft SQL Server 7.0
' --- ListSQL = "SELECT name AS tablename FROM SysObjects WHERE [type] = 'U'"
 
' --- SQL-String für Oracle 7.x oder höher (alle Tabellen, auf die der User Zugriff hat)
' --- ListSQL = "SELECT table_name AS tablename FROM all_tables"
 
' --- SQL-String für Oracle 7.x oder höher (alle Tabellen, die dem User gehören)
' --- ListSQL = "SELECT table_name AS tablename FROM user_tables"
 
Set ListRS = Server.CreateObject("ADODB.Recordset")
    ListRS.Open ListSQL, objConn, 3, 3
 
        ' --- Ausgabe der Überschrift
        Response.Write "<b><u>Tabellen in DB</u></b><br>" & vbCrLf
 
        Do While Not ListRS.EOF
 
            ' --- Ausgabe des Tabellennamens
            Response.Write ListRS.Fields("tablename") & "<br>" & vbCrLf
            ListRS.MoveNext
 
        Loop
 
    ListRS.Close
Set ListRS = Nothing
%>

——————————————————————————–
Alternativ kann man auch auf eine relativ unbekannte Methode des Connection-Objekts zurückgreifen.
Die OpenSchema-Methode. Mit Hilfe dieser Methode können Sie sehr viel über Ihre Datenbank erfahren.
So zum Beispiel auch, welche Tabellen in der Datenbank enthalten sind.

[listtables.asp]

<%
' --- Öffnen der Datenbankverbindung
Set objConn = Server.CreateObject("ADODB.Connection")
    objConn.Open "<DSN>", "<UID>", "<PWD>"
 
' --- Instantiieren des Recordsets für das Auslesen der Tabellen
' --- adSchemaTables = 20 (Konstante definiert in adovbs.inc)
Set objRS = objConn.OpenSchema(adSchemaTables)
 
    Response.Write "<b>Tabellenname</b><br>"
    Do Until objRS.EOF
 
        ' --- Da auch die Systemtabelle (objRS.Fields("TABLE_TYPE") = "SYSTEM_TABLE")
        ' --- zurückgegeben werden, wird eine Eingrenzung auf die Usertabellen implementiert
        If objRS.Fields("TABLE_TYPE") = "TABLE" THEN
            Response.Write objRS.Fields("TABLE_NAME") & "<br>" & vbCrLf
        End if
 
        objRS.MoveNext
 
    Loop
 
' --- Schliessen und terminieren des Recordets
    objRS.Close
Set objRS = Nothing
 
' --- Schliessen und terminieren der Datenbankverbindung
    objConn.Close
Set objConn = Nothing
%>

Browser ermitteln

' --- Ermitteln des Browsertyps
Set objBrowser = Server.CreateObject("MSWC.BrowserType")
    If objBrowser.Browser = "IE" Then
        CSSFile = "ie.css"
        Else
            CSSFile = "ns.css"
    End if
Set objBrowser = Nothing
 
In den Head-Tag fügst du dann folgendes ein:
<link rel=stylesheet href="<%=CSSFile%>" type="text/css">

An NT-Domäne anmelden

<%
If Request.ServerVariables("LOGON_USER") = "" Then
    Response.Status = "401 - Not allowed"
    Response.End
End if
 
' --- Wenn der User hierhin kommt, ist das Login OK
' --- daher kann man einfach weitermachen ohne weitere Prüfung
...
%>

Wartefunktion

Mittels diesem code kann man in ASP eine warte-funktion wie in VB erstellen:

<%
While a=1
Response.Write "Hi" & "<br>"
WaitNSeconds(1)
Wend
 
Private Sub WaitNSeconds(n)
 
    Response.Write Now & " - " & Timer & "<br>"
    StopTimer = Timer + n
    Do While Timer < StopTimer
    Loop
    Response.Write Now & " - " & Timer & "<br>"
 
End Sub
%>

Pfad entfernen

' Pfad entfernen
Function GetFileName(FileName)
    Dim TmpFileName
    TmpFileName = FileName
    TmpFileName = Trim(Replace(TmpFileName,"", "/"))
    TmpFileName = Right(TmpFileName, Len(TmpFileName) -
InStrRev(TmpFileName, "/",true, vbTextCompare))
    GetFileName = TmpFileName
End Function
Respone.Write GetFileName("c:inetpubwwwrootfilesblabla.asp")

ergibt
blabla.asp

Statt einem phys. Pfad kann man auch eine URL der Func. übergeben

ggf. muss man es noch ein wenig anpassen.