<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.sachsen.schule/dwiki/index.php?action=history&amp;feed=atom&amp;title=Benutzer%3AKirmse%2Fflehrer01</id>
	<title>Benutzer:Kirmse/flehrer01 - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.sachsen.schule/dwiki/index.php?action=history&amp;feed=atom&amp;title=Benutzer%3AKirmse%2Fflehrer01"/>
	<link rel="alternate" type="text/html" href="https://wiki.sachsen.schule/dwiki/index.php?title=Benutzer:Kirmse/flehrer01&amp;action=history"/>
	<updated>2026-05-04T13:38:45Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Delixs</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://wiki.sachsen.schule/dwiki/index.php?title=Benutzer:Kirmse/flehrer01&amp;diff=635&amp;oldid=prev</id>
		<title>Schoffer: 3 Versionen</title>
		<link rel="alternate" type="text/html" href="https://wiki.sachsen.schule/dwiki/index.php?title=Benutzer:Kirmse/flehrer01&amp;diff=635&amp;oldid=prev"/>
		<updated>2008-03-04T21:08:29Z</updated>

		<summary type="html">&lt;p&gt;3 Versionen&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 4. März 2008, 23:08 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;de&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(kein Unterschied)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Schoffer</name></author>
	</entry>
	<entry>
		<id>https://wiki.sachsen.schule/dwiki/index.php?title=Benutzer:Kirmse/flehrer01&amp;diff=634&amp;oldid=prev</id>
		<title>Kirmse: Login des angemeldeten Lehrers wird ermittelt</title>
		<link rel="alternate" type="text/html" href="https://wiki.sachsen.schule/dwiki/index.php?title=Benutzer:Kirmse/flehrer01&amp;diff=634&amp;oldid=prev"/>
		<updated>2005-11-13T17:45:27Z</updated>

		<summary type="html">&lt;p&gt;Login des angemeldeten Lehrers wird ermittelt&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 13. November 2005, 19:45 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l31&quot;&gt;Zeile 31:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 31:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# ---------------- Hauptprogramm ------------------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# ---------------- Hauptprogramm ------------------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;font color=&quot;#C0C0C0&quot;&amp;gt;&amp;lt;i&amp;gt;# es holt sich das Login des Lehrers (aus der Umgebungsvariablen&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;?&lt;/del&gt;)&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;font color=&quot;#C0C0C0&quot;&amp;gt;&amp;lt;i&amp;gt;# es holt sich das Login des Lehrers (aus der Umgebungsvariablen &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;REMOTE_USER&lt;/ins&gt;)&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;font color=&quot;#C0C0C0&quot;&amp;gt;&amp;lt;i&amp;gt;# &lt;/del&gt;$lehrer = &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;...&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  $lehrer = &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;$ENV{REMOTE_USER};&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# es setzt ein Shellkommando an den LDAP ab&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# es setzt ein Shellkommando an den LDAP ab&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Kirmse</name></author>
	</entry>
	<entry>
		<id>https://wiki.sachsen.schule/dwiki/index.php?title=Benutzer:Kirmse/flehrer01&amp;diff=633&amp;oldid=prev</id>
		<title>Kirmse: das derzeit vollständige Script</title>
		<link rel="alternate" type="text/html" href="https://wiki.sachsen.schule/dwiki/index.php?title=Benutzer:Kirmse/flehrer01&amp;diff=633&amp;oldid=prev"/>
		<updated>2005-11-13T14:18:49Z</updated>

		<summary type="html">&lt;p&gt;das derzeit vollständige Script&lt;/p&gt;
&lt;a href=&quot;https://wiki.sachsen.schule/dwiki/index.php?title=Benutzer:Kirmse/flehrer01&amp;amp;diff=633&amp;amp;oldid=632&quot;&gt;Änderungen zeigen&lt;/a&gt;</summary>
		<author><name>Kirmse</name></author>
	</entry>
	<entry>
		<id>https://wiki.sachsen.schule/dwiki/index.php?title=Benutzer:Kirmse/flehrer01&amp;diff=632&amp;oldid=prev</id>
		<title>Kirmse: ein Teil des Scripts und Screenshot</title>
		<link rel="alternate" type="text/html" href="https://wiki.sachsen.schule/dwiki/index.php?title=Benutzer:Kirmse/flehrer01&amp;diff=632&amp;oldid=prev"/>
		<updated>2005-11-12T23:32:26Z</updated>

		<summary type="html">&lt;p&gt;ein Teil des Scripts und Screenshot&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=== das Script ===&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;#!/usr/bin/perl -w&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 use strict;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# ---------------- Konfigurationsbereich ----------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Anzahl der Spalten in der Tabelle fuer die Auswahl der Klassen&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 my $anzspalten = 6;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# das Kommando, dass an den LDAP abgesetzt wird&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 my $kommando = &amp;quot;ich werden den doch hoffentlich noch bekommen :)&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# ---------------- Initialisierungsbereich --------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 my ($lehrer,@daten,%schueler,$klassen,$teilnehmer,$projekte);&lt;br /&gt;
 my ($datei1,$datei2,$zeit,$liste1,$liste2,$formular);&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# wir basteln uns eine Zeitmarkierung z.B. 2005-11-5--9-27&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 my ($sek,$min,$st,$tag,$monat,$jahr,$wt,$tj,$sz) = localtime(time);&lt;br /&gt;
 $zeit = ($jahr+1900).&amp;#039;-&amp;#039;.($monat+1).&amp;#039;-&amp;#039;.$tag.&amp;#039;--&amp;#039;.$st.&amp;#039;-&amp;#039;.$min;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# der Dateiname fuer die Zuordnung Schueler-Klasse&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 $datei1 = &amp;#039;schueler.&amp;#039;.$zeit.&amp;#039;.txt&amp;#039;;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# der Dateiname fuer die Zuordnung Projektgruppe-Klasse&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 $datei2 = &amp;#039;teilnehmer.&amp;#039;.$zeit.&amp;#039;.txt&amp;#039;;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# ---------------- Hauptprogramm ------------------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# es holt sich das Login des Lehrers (aus der Umgebungsvariablen?)&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# $lehrer = ...&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# es setzt ein Shellkommando an den LDAP ab&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 @daten    = &amp;amp;hole_daten($kommando);&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# es erstellt eine Schülerliste (Login -&amp;gt; Klasse)&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 %schueler = &amp;amp;erstelle_schuelerliste(@daten);&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# diese Schülerliste wird abgespeichert&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;amp;speichern_schuelerliste($datei1,%schueler);&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# es erstellt eine Klassenliste (z.B. 5a, 5b, 6a, ...)&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 $liste1   = &amp;amp;erstelle_klassenliste(%schueler);&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# es erstellt ein Formular&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 $formular = &amp;amp;erstelle_formular($liste1,$anzspalten);&lt;br /&gt;
 print $formular;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# ---------------- Prozeduren ---------------------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;#--------------------------------------------------------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Funktion: holt mit einem Shell-Aufruf die Daten aus dem LDAP&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Aufruf:   @daten = &amp;amp;hole_ldif-Daten($kommando);&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Input:    der Shellaufruf als String&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Output:   quasi ein &amp;quot;LDIF-File&amp;quot; als Liste&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Bemerk.:  Shellaufruf mit eval, d.h. kein Abbruch bei Fehler&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;#        :  !!! z.Zeit einfach ein passwd-Aufruf als Dummy !!!&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Update:   12.11.2005&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;#--------------------------------------------------------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 sub hole_daten {&lt;br /&gt;
   my $kommando = shift;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# es wird hier als Dummy erstmal eine LDIF-Datei eingelesen.&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# solange die nicht zur Verfügung steht, eine passwd&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   open (DATEI,&amp;#039;&amp;lt;passwd&amp;#039;) or die &amp;quot;passwd konnte nicht geoeffnet werden&amp;quot;;&lt;br /&gt;
   my @daten = &amp;lt;DATEI&amp;gt;;&lt;br /&gt;
   close DATEI;&lt;br /&gt;
 &lt;br /&gt;
   return @daten&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;#--------------------------------------------------------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Funktion: holt  aus dem ldif-File die Logins und die Klasse&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Aufruf:   %schueler = &amp;amp;erstelle_schuelerliste_aus_ldif(@daten);&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Input:    das ldif-file als Liste&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Output:   einen Hash %schueler  Login -&amp;gt; Klasse&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Bemerk.:  derzeit nicht eingebunden, es ist nur eine&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;#           Vermutung, dass das LDIF so aussieht&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Update:   12.11.2005&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;#--------------------------------------------------------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 sub erstelle_schuelerliste_aus_ldif {&lt;br /&gt;
   my @daten = @_;&lt;br /&gt;
   my ($login,$klasse,%schueler);&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# fuer jede Zeile der Daten tue&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   foreach my $zeile (@daten) {&lt;br /&gt;
     &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# wenn die Zeile mit gecos beginnt, dann&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
     if ($zeile =~ /^gecos:(.*)$/) {&lt;br /&gt;
       &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# zerlege den Klammerausdruck beim Komma in Login und Klasse&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
       ($login,$klasse) = split &amp;#039;,&amp;#039; , $1;&lt;br /&gt;
       &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# erstelle die Zuordnung Login -&amp;gt; Klasse (Hash: %schueler)&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
       $schueler{$login} = $klasse;&lt;br /&gt;
     }&lt;br /&gt;
   }&lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# den Hash (die Zuordnung) %schueler geben wir zurueck&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   return %schueler&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;#--------------------------------------------------------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Funktion: holt aus der passwd die Logins und die Klasse&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Aufruf:   %schueler = &amp;amp;erstelle_schuelerliste(@daten);&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Input:    die passwd als Liste: @daten&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Output:   einen Hash %schueler  Login -&amp;gt; Klasse&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Bemerk.:  hat nur Dummy-funktion, da kein LDIF-file zur Verfuegung&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Update:   10.11.2005&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;#--------------------------------------------------------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 sub erstelle_schuelerliste {&lt;br /&gt;
   my @daten = @_;&lt;br /&gt;
   my ($login,$klasse,%schueler,@temp);&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# fuer jede Zeile der Daten tue&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   foreach my $zeile (@daten) {&lt;br /&gt;
     &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# wir zerlegen die Zeile&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
     @temp = split &amp;#039;:&amp;#039;, $zeile;&lt;br /&gt;
     &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# wenn die Zeile mit gecos beginnt, dann&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
     if ($temp[3] == 102) {&lt;br /&gt;
       &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# zerlege den Klammerausdruck beim Komma in Login und Klasse&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
       ($login,$klasse) = split &amp;#039;,&amp;#039; , $temp[4];&lt;br /&gt;
       &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# erstelle die Zuordnung Login -&amp;gt; Klasse (Hash: %schueler)&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
       if (defined($klasse)) { $schueler{$login} = $klasse }&lt;br /&gt;
     }&lt;br /&gt;
   }&lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# den Hash (die Zuordnung) %schueler geben wir zurueck&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   return %schueler&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;#--------------------------------------------------------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Funktion: speichert den Hash %schueler&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Aufruf:   &amp;amp;speichern_schuelerliste(%schueler);&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Input:    das ldif-file als Liste&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Output:   enen Hash %schueler  Login -&amp;gt; Klasse&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Bemerk.:  hat nur Dummy-funktion, da kein LDIF-file zur Verfuegung&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Update:   10.11.2005&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;#--------------------------------------------------------------------&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 sub speichern_schuelerliste {&lt;br /&gt;
   my $datei = shift;&lt;br /&gt;
   my %schueler = @_;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# oeffne die Datei $datei zum schreiben oder Abbruch mit Fehlermeldung&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   open (DATEI,&amp;quot;&amp;gt;$datei&amp;quot;)&lt;br /&gt;
     or die &amp;quot;die Datei $datei konnte nicht geschrieben werden.\n$!&amp;quot;;&lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# fuer jeden User des Hashs tue&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   foreach my $user (keys %schueler) {&lt;br /&gt;
     &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# schreibe in die Datei das Login ein Leerzeichen und seine Klasse&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
     print DATEI $user, &amp;#039; &amp;#039;, $schueler{$user}, &amp;quot;\n&amp;quot;&lt;br /&gt;
   }&lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# schliesse die Datei&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   close DATEI;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 sub erstelle_klassenliste {&lt;br /&gt;
   my %schueler = @_;&lt;br /&gt;
 &lt;br /&gt;
   my %klassen  = ();&lt;br /&gt;
   my $liste    = &amp;quot;&amp;quot;;&lt;br /&gt;
   my $klasse   = &amp;quot;&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# fuer jeden Schueler des Hashs tue&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   foreach my $user (keys %schueler) {&lt;br /&gt;
     &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# speichere die Klasse des Schuelers in $klasse&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
     $klasse = $schueler{$user};&lt;br /&gt;
     &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# bringe die Klasse in den Hash %klassen (vernichte Doubletten)&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
     $klassen{$klasse} = 1;&lt;br /&gt;
   }&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# fuer jede Klasse aus dem Hash %klassen&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   foreach my $klasse (keys %klassen) {&lt;br /&gt;
     &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# hänge den Schluessel (also die Klasse) und ein Komma an $liste&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
     $liste .= $klasse.&amp;#039;,&amp;#039;&lt;br /&gt;
   }&lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# das letzte Komma war zuviel, also weg&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   chop($liste);&lt;br /&gt;
 &lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# gibt diesen String mit den Klassen zurueck&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   return $liste&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 sub erstelle_formular {&lt;br /&gt;
   my $liste = shift;&lt;br /&gt;
   my $AnzSp = shift;&lt;br /&gt;
 &lt;br /&gt;
   my $header = &amp;quot;Content-type: text/html\n\n&amp;quot;;&lt;br /&gt;
 &lt;br /&gt;
   my $formular = &amp;quot;&amp;quot;;&lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# das Formular wird als HERE-Dokument definiert.&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# dieses geht bis &amp;quot;ENDE&amp;quot;, danach wird die Tabelle fuer die&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   &amp;lt;font color=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;i&amp;gt;# Klassen gebaut. Dieses HERE-Dokument ist reines HTML!&amp;lt;/i&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
   $formular .= &amp;lt;&amp;lt;ENDE;&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
jetzt kommt leider Murks, weil das HERE-Dokument nicht richtig angezeigt wird (wegen den HTML-Befehlen). Da muss ich mir doch noch was einfallen lassen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== ein Screenshot ===&lt;br /&gt;
&lt;br /&gt;
[[bild:austeilen.png]]&lt;br /&gt;
&lt;br /&gt;
--[[Benutzer:Kirmse|Kirmse]] 00:32, 13. Nov 2005 (CET)&lt;/div&gt;</summary>
		<author><name>Kirmse</name></author>
	</entry>
</feed>