Hallo Zusammen,
ich habe ein Problem dass ich leider bisher noch nicht lösen konnten.
Das erste Skript ist eine Seite mit einem Formular. Hier sollen User verwaltet werden. Die Variablen, bzw. der Inhalt von $pnummer und $name
soll über eine Class verabeitet werden und wieder auf der gleichen Seite ausgegeben werden. Da eine Eingabe von mehr als ein User zur gleichzeitigen Berechtigung möglich sein soll, soll ein Array über die Class wieder an das Formular zurück gegeben werden und die User in einer Tabelle auflisten (max. 5 Stück). Im Moment gibt die erste Seite lediglich die einmal die Variablen $pnummer und $name aus. Hier sollte dann aber eigentlich die Liste der eingegeben User erscheinen. mir ist nicht klar wie ich das Array zur Ausgabe hinbekommen. nachfolgend poste ich einmal die Formularseite (mit Klassenaufruf) und den relevanten Teil der Klasse.
Vielleicht kann mir jemand einen Tipp geben was ich genau falsch mache.... bin gerade dabei in die Programmierung einzusteigen
Formular:
<html>
<head>
<title>UB P&G Intranet-Sitemanager </title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta http-equiv="Pragma" content="no-cache">
<meta name="author" content="UB P&G Intranet-Team">
<meta name="description" content="Sitemanager">
<link rel="stylesheet" media="print" href="/public/scripts/printer.css">
<link rel="stylesheet" media="screen" href="/public/scripts/screen_application.css">
<script language="JavaScript" src="/public/scripts/global_application.js" type="text/javascript"></script>
<link rel="stylesheet" media="screen" href="/admin/aw/navigation/zentral/navtool.css">
<script language="JavaScript">
<!--
var userNumber = "_";
var userName = "_";
var newUserList = new Array(5);
var count = 0;
function addNewUser()
{
// ermitteln des Usernamens und der ID
userNumber = document.getElementById("newNumber").getAttribute('value');
userName = document.getElementById("newName").getAttribute('value');
if(count<=4)
{
newUserList[count] = new Array();
newUserList[count][0] = userNumber;
newUserList[count][1] = userName;
document.userForm.pnummer.value = newUserList[count][0];
document.userForm.name.value = newUserList[count][1];
count++;
document.userForm.submit();
}
else
{
alert("Es können max. 5 User eingetragen werden");
}
}
function submit()
{
document.userForm.submit();
}
//-->
</script>
</head>
<body>
<!-- 100% Höhe Tabelle -->
<table height="100%" border="0" cellpadding="0" cellspacing="0" width="600">
<tr><td valign="top">
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="250">
<h1 style="margin-bottom:2px;margin-top:0px;">User - Shares f. die VI Umgebung</h1><br>
<h3 style="margin-bottom:2px;margin-top:0px;">Neue Samba-User hinzufuegen</h3>
</td>
</tr>
<tr><td><br><br></td></tr>
<tr>
<td><b>P-Nummer Name, Vorname</b></td>
</tr>
<tr>
<td><input type="text" name="newNumber" value="" size="10" maxlength="7" id="newNumber">
<input type="text" name="newName" value="" size="25" maxlength="25" id="newName">
<button name="b_hinzufuegen" type="button" onclick="addNewUser()" style="cursor:hand; padding:0px; border-style:none; background-color:#FFFFFF;"><img src="/public/icons/application_buttons/b_hinzufuegen.gif" border="0" alt="hinzufuegen"></button></td>
</tr>
<tr>
<td><br><br>
<!-- ######################### -->
<!-- Begin der Tabelle mit neuen Usern -->
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td colspan="5">
<b>Liste der neuen User</b>
</td>
<td></td>
</tr>
<tr>
<td colspan="5">
<hr width="100%" size="1">
</td>
</tr>
<tr class="TabMittelgrau">
<td width="3px" bgcolor="white"></td>
<td>
<h2>User-ID</h2>
</td>
<td width="3px" bgcolor="white"></td>
<td>
<h2>Username (Name, Vorname)</h2>
</td>
</tr>
<tr></tr>
<form name="userForm" action="<?php $PHP_SELF ?>" method="POST">
<input type="hidden" name="pnummer" value="">
<input type="hidden" name="name" value="">
?>
<tr>
<td width="3px"></td>
<td class="TabHellgrau" width="50%">
<p style="background-color:"><b style="color:red"> <?= $pnummer ?></b></p></td><td width="3px"></td><td class="TabHellgrau"><p><b style="color:red"> <?= $name ?></b></p>
</td>
<td width="3px"></td>
</tr>
</form>
<tr>
<td colspan="5">
<hr width="100%" size="1">
</td>
</tr>
<tr>
<td align="right" colspan="5">
<button name="b_bestaetigen" type="button" onclick="submit()" style="cursor:hand; padding:0px; border-style:none; background-color:#FFFFFF;"><img src="/public/icons/application_buttons/b_bestaetigen.gif" border="0" alt="bestätigen"></button></td>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
Die Klasse
Danke und Gruß
Tolwin
ich habe ein Problem dass ich leider bisher noch nicht lösen konnten.
Das erste Skript ist eine Seite mit einem Formular. Hier sollen User verwaltet werden. Die Variablen, bzw. der Inhalt von $pnummer und $name
soll über eine Class verabeitet werden und wieder auf der gleichen Seite ausgegeben werden. Da eine Eingabe von mehr als ein User zur gleichzeitigen Berechtigung möglich sein soll, soll ein Array über die Class wieder an das Formular zurück gegeben werden und die User in einer Tabelle auflisten (max. 5 Stück). Im Moment gibt die erste Seite lediglich die einmal die Variablen $pnummer und $name aus. Hier sollte dann aber eigentlich die Liste der eingegeben User erscheinen. mir ist nicht klar wie ich das Array zur Ausgabe hinbekommen. nachfolgend poste ich einmal die Formularseite (mit Klassenaufruf) und den relevanten Teil der Klasse.
Vielleicht kann mir jemand einen Tipp geben was ich genau falsch mache.... bin gerade dabei in die Programmierung einzusteigen
Formular:
PHP-Code:
require("xxxxxxxxxxxx/SmbUsers_Class.php");
if(!is_object($smbUsersClass))
{
$smbUsersClass = new SmbUsers();
}
?>
<head>
<title>UB P&G Intranet-Sitemanager </title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta http-equiv="Pragma" content="no-cache">
<meta name="author" content="UB P&G Intranet-Team">
<meta name="description" content="Sitemanager">
<link rel="stylesheet" media="print" href="/public/scripts/printer.css">
<link rel="stylesheet" media="screen" href="/public/scripts/screen_application.css">
<script language="JavaScript" src="/public/scripts/global_application.js" type="text/javascript"></script>
<link rel="stylesheet" media="screen" href="/admin/aw/navigation/zentral/navtool.css">
<script language="JavaScript">
<!--
var userNumber = "_";
var userName = "_";
var newUserList = new Array(5);
var count = 0;
function addNewUser()
{
// ermitteln des Usernamens und der ID
userNumber = document.getElementById("newNumber").getAttribute('value');
userName = document.getElementById("newName").getAttribute('value');
if(count<=4)
{
newUserList[count] = new Array();
newUserList[count][0] = userNumber;
newUserList[count][1] = userName;
document.userForm.pnummer.value = newUserList[count][0];
document.userForm.name.value = newUserList[count][1];
count++;
document.userForm.submit();
}
else
{
alert("Es können max. 5 User eingetragen werden");
}
}
function submit()
{
document.userForm.submit();
}
//-->
</script>
</head>
<body>
<!-- 100% Höhe Tabelle -->
<table height="100%" border="0" cellpadding="0" cellspacing="0" width="600">
<tr><td valign="top">
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="250">
<h1 style="margin-bottom:2px;margin-top:0px;">User - Shares f. die VI Umgebung</h1><br>
<h3 style="margin-bottom:2px;margin-top:0px;">Neue Samba-User hinzufuegen</h3>
</td>
</tr>
<tr><td><br><br></td></tr>
<tr>
<td><b>P-Nummer Name, Vorname</b></td>
</tr>
<tr>
<td><input type="text" name="newNumber" value="" size="10" maxlength="7" id="newNumber">
<input type="text" name="newName" value="" size="25" maxlength="25" id="newName">
<button name="b_hinzufuegen" type="button" onclick="addNewUser()" style="cursor:hand; padding:0px; border-style:none; background-color:#FFFFFF;"><img src="/public/icons/application_buttons/b_hinzufuegen.gif" border="0" alt="hinzufuegen"></button></td>
</tr>
<tr>
<td><br><br>
<!-- ######################### -->
<!-- Begin der Tabelle mit neuen Usern -->
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td colspan="5">
<b>Liste der neuen User</b>
</td>
<td></td>
</tr>
<tr>
<td colspan="5">
<hr width="100%" size="1">
</td>
</tr>
<tr class="TabMittelgrau">
<td width="3px" bgcolor="white"></td>
<td>
<h2>User-ID</h2>
</td>
<td width="3px" bgcolor="white"></td>
<td>
<h2>Username (Name, Vorname)</h2>
</td>
</tr>
<tr></tr>
<form name="userForm" action="<?php $PHP_SELF ?>" method="POST">
<input type="hidden" name="pnummer" value="">
<input type="hidden" name="name" value="">
PHP-Code:
<?php
if($pnummer)
{
$smbUsersClass->addNewSmbUser($pnummer, $name);
}
<tr>
<td width="3px"></td>
<td class="TabHellgrau" width="50%">
<p style="background-color:"><b style="color:red"> <?= $pnummer ?></b></p></td><td width="3px"></td><td class="TabHellgrau"><p><b style="color:red"> <?= $name ?></b></p>
</td>
<td width="3px"></td>
</tr>
</form>
<tr>
<td colspan="5">
<hr width="100%" size="1">
</td>
</tr>
<tr>
<td align="right" colspan="5">
<button name="b_bestaetigen" type="button" onclick="submit()" style="cursor:hand; padding:0px; border-style:none; background-color:#FFFFFF;"><img src="/public/icons/application_buttons/b_bestaetigen.gif" border="0" alt="bestätigen"></button></td>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
Die Klasse
PHP-Code:
class SmbUsers
{
function addNewSmbUser($pnummer, $name)
{
/*$file = fopen("/var/opt/data/www/pvk/groupfiles/passwd_entry.new","a");
fputs($file,"N:".$pnummer.":".$name);
fclose($file);*/
$error = true;
foreach($this->$userList as $key => $value)
{
if($pnummer == $key)
{
echo "false!!!";
$error = false;
}
}
if($error)
{
echo "neuer User <br> ";
echo "sizeOf userListArray: ".sizeOf($this->$newUserList);
$count = sizeOf($this->$newUserList);
if(sizeOf($this->$newUserList))
{
$this->$newUserList = array($pnummer => $name);
echo " newUserList geschrieben ";
while (list($pnummer, $name) = each($this->$newUserList))
{
echo "$pnummer ist $name<br>\n";
}
}
else
{
$this->addArray($newUserList, $pnummer, $name);
}
echo " Blub2: ".sizeOf($this->$newUserList);
}
}
}
Tolwin
Kommentar