[PHP-users 19290]Re: はじめまして
T.Nonaka
nonaka @ cf.muuz.net
2003年 12月 11日 (木) 10:57:22 JST
野中です。
斉藤さん、こんにちは。
閉じの”が抜けていませんか?
$c->modify("cn={$_POST["cn"]},{$_SESSION["d_dn"]}, $newinfo);
|
V
$c->modify("cn={$_POST["cn"]},{$_SESSION["d_dn"]}", $newinfo);
以上
> みなさん
> こんにちは
>
> 斉藤@ophiuchusと申します。
>
> phpを始めたばかりの初心者ですのです
> どうぞよろしくお願い申し上げます。
>
> このたび、php-4.3.4とapache-2.0.48を組み合わせて、ソフトウェアデザイン
> 2003/6月号に記載されております。LDAPを使ったvirtualドメイン管理のwebペー
> ジを作成しております。
>
> 雑誌に記載されている通りの、ソースコードを作成し、編集画面のリンクをクリッ
> クし下記のphpソースコードを実行しますと下記のようなエラーが出力され、
> LDAPデータの編集画面に移行出来ません。
>
> 私なりにソースコードのtypo等がないか色々と数十回と見直したのですが、何処
> にもtypoの痕跡等はありませんでした。
>
> このような状況なのですが、どのようにソースコードを改善すれば編集画面移行
> しLDAPデータを編集できるようにすることが出来るのでしょうか。
>
> 識者の皆様ご指導お願い申し上げます。
>
> [編集画面をクリックしたときに出る、エラー内容]
> Parse error: parse error in /usr/local/apache2/htdocs/imap/modify.php on line 64
>
> [編集画面をクリックしたときに実行される、phpソースコード]
> <?php
> require_once "auth.inc";
> if ($info[0]["mailgroup"][0] !==admin) {
> //admin以外のログインは許可しない
> exit;
> }
> if ($_SERVER["REQUEST_METHOD"] == "GET") {
> //GETメソッドであればURLの引数からDNを作成し、そのユーザー情報を連想配列に格納
> //以下は取得された情報をHTMLフォームに表示
> $newinfo = $c->get("cn={$_GET["cn"]},{$_SESSION["d_dn"]}", "objectclass=*");
> ?>
> <html>
> <body>
> <form method="POST" action="<?= $_SERVER["PHP_SELF"] ?>">
> <input type="hidden" name="cn" value="<?= $_GET["cn"] ?>">
> ユーザー編集
> <table bprder="1">
> <tr>
> <td>メールアドレス</td>
> <td><?= $newinfo[0]["mail"][0] ?></td>
> </tr>
> <tr>
> <td>パスワード</td>
> <td><input type="password" name="userpassword" value=""></td>
> </tr>
> <tr>
> <td>名字</td>
> <td><input type="text" name="sn" value="<?= $newinfo[0]["sn"][0] ?>"></td>
> </tr>
> <tr>
> <td>名前</td>
> <td><input type="givenname" value="<?= $newinfo[0]["givenname"][0] ?>"></td>
> </tr>
> <tr>
> <td><br></td>
> <td><input type="submit" name="modify" value="編集"></td>
> </tr>
> </table>
> <hr>
> <a href="index.php">トップページ</a><br>
> <a href="logout.php">ログアウト</a>
> </form>
> </body>
> </html>
> <?php
> }
> elseif (isset($_POST["modify"])) {
> //POSTメソッドであればHTMLフォームの情報から新たな連想配列を作成する
> if (isset($_POST["userpassword"])) {
> //パスワードが定義されていた場合のみパスワードに関する配列を作成
> mt_srand((double) microtime()*1000000);
> $salt=mhash_keygen_s2k(MHASH_SHA1, $_POST["userpassword"], substr(pack("h*", md5(mt_rand())), 0, 8), 4);
> $newinfo["userpassword"] = "{ssha}" . base64_encode(mhash(MHASH_SHA1, $_POST["userpassword"] . $salt) . $salt);
> }
> $newinfo["sn"] = $_POST["sn"];
> $newinfo["givenname"] = $_POST["givenname"];
> //情報がそろえばLDAPデータを編集し結果を表示
> $c->modify("cn={$_POST["cn"]},{$_SESSION["d_dn"]}, $newinfo);
> ?>
> <html>
> <body>
> ユーザー情報が変更されました。
> <hr>
> <a href="index.php">トップページ</a><br>
> <a href="logout.php">ログアウト</a>
> </body>
> </html>
> <?php
> }
> ?>
> --
> Tetsuya Saito <tetuya @ ophiuchus.info>
>
>
> _______________________________________________
> PHP-users mailing list
> PHP-users @ php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-users
--
<>
PHP-users メーリングリストの案内