中学生がPHPを習得するスレ
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2006/02/12(日) 21:22:54ID:6w/Lcw3V最初は何を学べばいいですか?
本を紹介してくれてもいいです。
そのままレッスンしてくれてもいいです。
0067nobodyさん
2006/03/20(月) 16:10:46ID:eSmM++Vt>>65-66を参考にして割り算スクリプトを作りました。
<? if(empty($_GET)){ ?>
<HTML>
<BODY>
<form method="get" action="<?php $_SERVER['PHP_SELF']; ?>">
<input type="text" name="sahen">÷<input type="text" name="uhen">
<input type="submit" value="送信">
</form>
</BODY>
</HTML>
<? }else{
if(!preg_match('/^[0-9]+$/',$_GET[sahen].$_GET[uhen])){
echo "入力は半角数字で。";
}elseif($_GET[sahen] % $_GET[uhen]!==0){
$amari_answer = $_GET[sahen] % $_GET[uhen];
$answer = $_GET[sahen] / $_GET[uhen];
$answer = (int)$answer;
echo "答えは、$answer あまり $amari_answer です。";
}else{
$answer = $_GET[sahen] / $_GET[uhen];
echo "答えは、$answer です";
}
}
?>
0068nobodyさん
2006/03/20(月) 19:14:25ID:???<HTML><BODY>
<form method="get" action="<?php print $_SERVER['PHP_SELF']; ?>">
<input type="text" name="sahen">÷<input type="text" name="uhen">
<input type="submit" value="送信">
</form>
</BODY></HTML>
<?php
//フォームは常に表示したほうがいいかも。
//計算するたびに電源が切れる電卓が使いにくいのと同じ。
if ((! strlen($_GET['uhen'])) && (! strlen($_GET['sahen']))) {
print '右辺と左辺を入力してください。';
} elseif(!preg_match('/^[0-9]+$/',$_GET['sahen'].$_GET['uhen'])){
print '入力は半角数字で。';
}elseif(($_GET['sahen'] % $_GET['uhen'] !== 0) && ($_GET['sahen'] > $_GET['uhen'])){
//左辺が右辺より小さい場合に、ここを実行すると変な答えになるので、
//条件をちょっと厳しくして、左辺が右辺より小さい場合はここをスルー。
$amari_answer = $_GET['sahen'] % $_GET['uhen'];
$answer = $_GET['sahen'] / $_GET['uhen'];
$answer = (int)$answer;
echo "答えは、{$answer} あまり {$amari_answer} です。";
//これは漏れのこだわりでしかないんだけど、二重引用符で変数を展開す
//るときには{}で変数を囲んで明示的に展開するようにすると読みやすく
//なる
}else{
$answer = $_GET['sahen'] / $_GET['uhen'];
echo "答えは、{$answer} です";
}
?>
0069nobodyさん
2006/03/20(月) 21:10:41ID:???0070nobodyさん
2006/03/20(月) 21:16:21ID:jTYd4CQiPHPってきもいね。
記法が。
入るだの抜けるだのありえないんですが…いや聞き流してくださってかまわないっす。
(ちら裏)
そりゃPerlも十分きもいけどさ。
0071nobodyさん
2006/03/20(月) 21:23:40ID:???KENTを代表として。
0072nobodyさん
2006/03/20(月) 21:36:28ID:???PHPのLet's
0074nobodyさん
2006/03/20(月) 21:40:19ID:???被除数(わられるかず)と除数(わるかず)だよな。
>>68
| }elseif(($_GET['sahen'] % $_GET['uhen'] !== 0) && ($_GET['sahen'] > $_GET['uhen'])){
剰余の前に除数と被除数の0チェックをしたいところ。
0075nobodyさん
2006/03/20(月) 21:46:21ID:???こんなところで、ゆとり教育してどうする。
PHPとは関係なくても間違いは正してやらにゃ。
厨房相手ならなおのこと。
0078nobodyさん
2006/03/20(月) 22:03:09ID:???ところで、>>74を読んでこうしてみたがどうか?
<?PHP
if ( $_GET['uhen'] ) {
$dividend = $_GET['sahen'] ;
$divisor = $_GET['uhen'] ;
} else {
$dividend = 0 ; $divisor = 0 ;
} ?>
<HTML><BODY>
<form method="get" action="<?php print $_SERVER['PHP_SELF']; ?>">
<input type="text" name="sahen" value ='<?PHP echo $dividend ?>'>÷<input type="text" name="uhen" value ='<?PHP echo $divisor ?>'>
<input type="submit" value="送信">
</form>
</BODY></HTML>
<?php
if ( (!strlen($dividend)) && (!strlen($divisor)) ){
echo '被除数(わられるかず)と除数(わるかず)を入力してください。';
} elseif ( !preg_match('/^[0-9]+$/',$dividend.$divisor) ){
echo '入力は半角数字で。';
} elseif ( ($dividend != 0) && ($divisor != 0) ) {
$amari_answer = $dividend % $divisor;
$answer = (int)($dividend / $divisor) ;
echo "答えは、{$answer}" ;
if( $amari_answer ) {
echo " あまり {$amari_answer} です。";
}
} else {
echo "0の割り算キタコレ!!" ;
}
?>
008057
2006/03/20(月) 22:09:46ID:???ただ今、戻りました。
簡潔で、わかりやすくなってますね。それとinputにテキストが入っ
てるのが細かい工夫でいいかんじです。
蛇足ですが、2chは空白を削除しちゃうので、ソースの掲載には不向
きですね。対応する括弧がわからない…
008157
2006/03/20(月) 22:15:28ID:???$dividend = 'なんか入れてね' ; $divisor = 'なんかいれてね' ;
てのはどう?
ちなみに最初のif分岐は
$dividend = isset($_GET['sahen']) ? $_GET['sahen'] : 'なんか入れて' ;
$divisor = isset($_GET['uhen']) ? $_GET['uhen'] : 'なんか入れて' ;
でもいける。
0082nobodyさん
2006/03/20(月) 22:15:55ID:???そか
じゃ、さきっちょのところをこれでごまかすのはどうかw
$dividend = $divisor = '' ;
if ( $_GET['uhen'] && $_GET['sahen'] ) {
$dividend = $_GET['sahen'] ;
$divisor = $_GET['uhen'] ;
}
>>80
お帰りなさい。俺はオナニーでもして寝ます。おやしみー
00851 ◆J0d1mE8o22
2006/03/20(月) 23:00:16ID:???それに変わる正しい言葉がみつからなかったんで・・・。
だんだん精密なプログラムになってきましたね。
やはりプログラミングは、>>64のような柱から、後で精密にしていくもんなんでしょうね。
今日はゆとり世代の私につきあってくれてありがとうございました。>>57、>>58-64
0086nobodyさん
2006/03/20(月) 23:12:34ID:???<?PHP
$dividend = $_GET['sahen'] ? $_GET['sahen'] : '数字を入力' ;
$divisor = $_GET['uhen'] ? $_GET['uhen'] : '数字を入力' ;
?>
<HTML><BODY>
<form method="get" action="<?php print $_SERVER['PHP_SELF']; ?>">
<input type="text" name="sahen" style="text-align:right;" value ='<?PHP echo $dividend ?>'>÷<input type="text" name="uhen" style="text-align:right;" value ='<?PHP echo $divisor ?>'>
<input type="submit" value="送信">
</form>
</BODY></HTML>
<?php
if ( (!strlen($dividend)) && (!strlen($divisor)) ){
echo '被除数(わられるかず)と除数(わるかず)を入力してください。';
} elseif ( !preg_match('/^[0-9]+$/',$dividend.$divisor) ){
echo '入力は半角数字で。';
} elseif ( ($dividend != 0) && ($divisor != 0) ) {
$amari_answer = $dividend % $divisor ;
$answer = (int)($dividend / $divisor) ;
echo "答えは、{$answer} " ;
if( $amari_answer ) {
echo "あまり {$amari_answer} " ;
}
echo "です。" ;
} else {
echo "0の割り算キタコレ!!" ;
}
?>
0088nobodyさん
2006/03/20(月) 23:25:23ID:???たとえ>>1が釣りでも、池沼春厨でも、
おれはこのスレに常駐するとしよう。
糞春厨が新学期には掲示板を作れるようになるのをみさせてもらおう。
それは無理か
0089nobodyさん
2006/03/20(月) 23:27:43ID:???答えを出力するところが冗長。
printf( "答えは、%d %s です。", $answer, $amari_answer ? "あまり {$amari_answer}":'' ) ;
一行ですむね。
0090nobodyさん
2006/03/20(月) 23:30:38ID:???それだと、小数点の計算ははねられちゃう。
> elseif ( !preg_match('/^[0-9]+$/',$dividend.$divisor) ){
↓
elseif ( !is_numeric($dividend) || !is_numeric($divisor) ){
ってのはどうだ?
0092nobodyさん
2006/03/20(月) 23:35:32ID:???>>1よ、チェックを怠るな…
ただ、>>1の最初の割り算スクリプトについてだが、
ちゃんと(int)を使っているあたりがよい。
また、余り出力のアイディアも悪くないので、
鍛えればかなり優秀なプログラマーになる悪寒。
やばい、仕事場が>>1によって失われそうで本当に悪寒が…
0094nobodyさん
2006/03/20(月) 23:56:49ID:???<?PHP
$dividend = $_GET['sahen'] ? $_GET['sahen'] : '数字を入力' ;
$divisor = $_GET['uhen'] ? $_GET['uhen'] : '数字を入力' ;
?>
<HTML><BODY>
<form method="get" action="<?php print $_SERVER['PHP_SELF']; ?>">
<input type="text" name="sahen" style="text-align:right;" value ='<?PHP echo $dividend ?>'>÷<input type="text" name="uhen" style="text-align:right;" value ='<?PHP echo $divisor ?>'>
<input type="submit" value="送信">
</form>
</BODY></HTML>
<?php
if ( (!strlen($dividend)) && (!strlen($divisor)) ) {
echo '被除数(わられるかず)と除数(わるかず)を入力してください。';
} elseif ( !preg_match('/^[0-9]+$/',$dividend.$divisor) ) {
echo '入力は半角数字で。';
} elseif ( ($dividend != 0) && ($divisor != 0) ) {
$amari_answer = $dividend % $divisor ;
$answer = (int)($dividend / $divisor) ;
printf( "答えは、%d %s です。", $answer, $amari_answer ? "あまり {$amari_answer}":'' ) ;
} else {
echo '0の割り算キタコレ!!' ;
}
?>
<!-- 入力のチェックはJavascriptでやりたいが。 -->
009657
2006/03/21(火) 00:42:43ID:???・少数可
・不自然な最初の警告文非表示
<?PHP
$submit_check = isset($_GET['dividend']) ? $_GET['dividend'] : 0 ;
$dividend = isset($_GET['dividend']) ? $_GET['dividend'] : '数字を入力' ;
$divisor = isset($_GET['divisor']) ? $_GET['divisor'] : '数字を入力' ;
?>
<HTML><BODY><form method="get" action="<?php print $_SERVER['PHP_SELF']; ?>">
<input type="text" name="dividend" style="text-align:right;" value ='<?PHP echo $dividend ?>'>÷<input type="text" name="divisor" style="text-align:right;" value ='<?PHP echo $divisor ?>'>
<input type="hidden" name="submit_check" value="1"><input type="submit" value="送信">
</form></BODY></HTML>
<?php
if ($submit_check) {
if ( (!strlen($dividend)) && (!strlen($divisor)) ) {
echo '被除数(わられるかず)と除数(わるかず)を入力してください。';
} elseif ( !preg_match('/^[0-9]+(?:\.[0-9]+)$/',$dividend.$divisor) ) {
echo '入力は半角数字で。';
} elseif ( ($dividend != 0) && ($divisor != 0) ) {
$amari_answer = $dividend % $divisor ;
$answer = (int)($dividend / $divisor) ;
printf( "答えは、%d %s です。", $answer, $amari_answer ? "あまり {$amari_answer}":'' ) ;
} else {
echo '0の割り算キタコレ!!' ;
}
}
?>
009796
2006/03/21(火) 00:44:15ID:???正)$submit_check = isset($_GET['submit_check']) ? $_GET['submit_check'] : 0 ;
009857
2006/03/21(火) 00:53:30ID:???$dividend = isset($_GET['dividend']) ? $_GET['dividend'] : '数字を入力' ;
$divisor = isset($_GET['divisor']) ? $_GET['divisor'] : '数字を入力' ;
により、下の式は常にtrueだ!!
if ( (!strlen($dividend)) && (!strlen($divisor)) )
009957
2006/03/21(火) 01:26:27ID:???<?php
class Calc {
private static $sc; static $dividend; static $divisor; private static $amari_answer; private static $answer;
private static $error = array();
public function __construct() {
self::$sc = isset($_GET['submit_check']) ? $_GET['submit_check'] : NULL ;
self::$dividend = isset($_GET['dividend']) ? $_GET['dividend'] : NULL ;
self::$divisor = isset($_GET['divisor']) ? $_GET['divisor'] : NULL ;
}
public function Validate() {
if (! strlen(self::$dividend)) {self::$error[] = '被除数を入力してください。';}
if (! strlen(self::$divisor)) {self::$error[] = '除数を入力してください。';}
if ( (!preg_match('/^[0-9]+(?:\.[0-9]+)$/', self::$dividend.self::$divisor)) && (strlen(self::$dividend)) && (strlen(self::$divisor)) ) {
self::$error[] = '入力は半角数字で。';}
if ((! self::$error) && (self::$dividend != 0) && (self::$divisor != 0) ) {
self::$amari_answer = self::$dividend % self::$divisor ; self::$answer = (int)(self::$dividend / self::$divisor) ;}
}
public function showResult() {
if (self::$error && self::$sc) {print "</ul>\n";
foreach (self::$error as $key => $value) {print "<li>$value</li>\n";}print "</ul>\n";
} elseif ((! self::$error) && self::$sc) {
printf( "答えは、%d %s です。", self::$answer, self::$amari_answer ? "あまり " . self::$amari_answer : '' );
}
}
}
?>
010057
2006/03/21(火) 01:29:35ID:???誤)preg_match('/^[0-9]+(?:\.[0-9]+)$/'
正)preg_match('/^[0-9]+(?:\.[0-9]+)?$/'
続き
<?php
$Calc = new Calc();
$Calc->Validate();
$Calc->showResult();
?>
<HTML><BODY>
<form method="get" action="<?php print $_SERVER['PHP_SELF']; ?>">
<input type="text" name="dividend" style="text-align:right;" value ='<?PHP echo Calc::$dividend; ?>'>÷<input type="text" name="divisor" style="text-align:right;" value ='<?PHP echo Calc::$divisor ?>'>
<input type="hidden" name="submit_check" value="1">
<input type="submit" value="送信">
</form>
</BODY></HTML>
0101nobodyさん
2006/03/21(火) 10:02:26ID:???って環境はPHP5なのか・・・。
今後発展していっても、都合上4しか環境が無いので、静観しとく。
010257
2006/03/21(火) 10:08:22ID:???スミマセソ。独走状態に突入してしまいました。
今後は、原点に戻って、
1. 1氏の応援と援助
2. みんなでわいわいソースの検証
にしますので、参加よろしく。
追伸 1氏のPHPのバージョンは?
0103nobodyさん
2006/03/21(火) 10:45:07ID:???01051 ◆J0d1mE8o22
2006/03/21(火) 11:49:53ID:???ローカル環境は、apache2のPHP5で、
共用サーバーは、
メインがXREAのs43鯖でPHP4、
サブがXREAのs190鯖でPHP5です。
010657
2006/03/21(火) 12:00:52ID:???漏れと比べるとかなりいい環境だなぁ…Apache2 + PHP5ならできること
の範囲は広がるね。
とゆーことで、アドバイスの際はPHP4以下との互換性も保ちつつ、時に
PHP5特有のコードもありで。
>>104
ちなみに、(int)を使ったことがなかった漏れは、1に教えられることの
ほうが多くなるかも。
0107nobodyさん
2006/03/21(火) 12:10:16ID:???<?php
class Calc {
var $sc ; var $dividend ; var $divisor ; var $amari_answer ; var $answer;
var $error = array();
function Calc() { //コンストラクタ
$this->sc = isset($_GET['submit_check']) ? $_GET['submit_check'] : NULL ;
$this->dividend = isset($_GET['dividend']) ? $_GET['dividend'] : null ;
$this->divisor = isset($_GET['divisor']) ? $_GET['divisor'] : null ;
$this->amari_answer = $this->answer = 0 ;
}
function Validate() {//入力チェック
if( $this->sc ) {
if (! strlen($this->dividend)) { $this->error[] = '被除数を入力してください。' ; }
if (! strlen($this->divisor)) { $this->error[] = '除数を入力してください。' ; }
if ( !preg_match('/^[0-9]+(?:¥.[0-9]+)?$/', $this->dividend.$this->divisor) ) { $this->error[] = '入力は半角数字で。' ; }
if ((! $this->$error) && ($this->dividend != 0) && ($this->divisor != 0) ) {
$this->amari_answer = $this->dividend % $this->divisor ;
$this->answer = (int)($this->dividend / $this->divisor) ;
}
} else { $this->error[] = '割り算をするよ! 上に数字を入れて[送信]を押してね!' ; }
}
function showResult() {//結果出力
if ( $this->error ) {
print "</ul>¥n";
foreach ($this->error as $key => $value) { print "<li>$value</li>¥n" ; }
print "</ul>¥n";
} elseif ((! $this->error) && $this->sc) { printf( "答えは、%d %s です。", $this->answer, $this->amari_answer ? "あまり " . $this->amari_answer : '' ) ; }
} } ?>
<!-- つづく -->
0108nobodyさん
2006/03/21(火) 12:10:57ID:???<?PHP
$Calc = new Calc();
$Calc->Validate();
?>
<HTML><BODY>
<form method="get" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<input type="text" name="dividend" style="text-align:right;" value ='<?PHP echo $Calc->dividend; ?>'>÷<input type="text" name="divisor" style="text-align:right;" value ='<?PHP echo $Calc->divisor ?>'>
<input type="hidden" name="submit_check" value="1">
<input type="submit" value="送信">
</form>
<?PHP
$Calc->showResult();
?></BODY></HTML>
010957
2006/03/21(火) 12:15:04ID:???サンクス。これはありがたい。
漏れは「CGIプログラミング」->「はじめてのPHP5」->青マンモス(PHP5)
ときているので、正直なところ5以外はよくわからんのです。
0110nobodyさん
2006/03/21(火) 13:11:01ID:???Self::をthis->にした程度だけどね。
あ。せっかくscにhiddenで送っているのがもったいないので、
Validate()とerrorをちょっと変えて、最初の一回目だけ
'割り算をするよ! 上に数字を入れて[送信]を押してね!'
を出すようにしてみたヨケイナオセワ。
0113nobodyさん
2006/03/21(火) 13:50:33ID:???function getResult() { //結果の取得
$result = "" ;
if ( $error ) {
$result .= "</ul>¥n";
foreach ($this->error as $key => $value) { $result .= "<li>$value</li>¥n" ; }
$result .= "</ul>¥n";
} elseif ((! $this->error) && $this->sc) { $result .= sprintf( "答えは、%d %s です。", $this->answer, $this->amari_answer ? "あまり " . $this->amari_answer : '' ) ;
}
return $result ; }
function getForm() { //フォームの取得
return <<< EndOfForm
<form method="get" action="{$_SERVER['PHP_SELF']}">
<input type="text" name="dividend" style="text-align:right;" value ='{$this->dividend}'>÷<input type="text" name="divisor" style="text-align:right;" value ='{$this->divisor}'>
<input type="hidden" name="submit_check" value="1">
<input type="submit" value="送信">
</form>
EndOfForm;
}
本体側は、こんな感じで。
<HTML><BODY>
<?PHP
$Calc = new Calc() ;
$Calc->Validate() ;
echo $Calc->getForm() ;
echo $Calc->getResult() ;
?>
</BODY></HTML>
011457
2006/03/21(火) 14:31:02ID:???変に盛り上げたから、>>1は迷惑してるかも…>>1氏、時間のある
ときとか、質問があるときだけでも気軽に書き込んでくらさい。
>>112
ちがいます。漏れのせいで誤解されると>>1がかわいそうなので
きちんと明言しておきます。
>>113
なるほど。たしかに、フォームもプログラムに取り込んだほうが
HTMLがすっきりして見やすくなりそうですね。こういう、HTMLと
プログラムの分離の仕方には漏れも興味があります。
0115113
2006/03/21(火) 14:59:02ID:???こんかいの割り算のように小さい物では、あえてやる必要もないと思ったんだけどね。
色々と流儀もあるみたいで、宗教論争が始まったらつまらなくなっちゃいますし。
出力されたhtmlがガチャガチャになるのを嫌って、あえて出たり入ったりで書く人もいるくらいですから。
0116nobodyさん
2006/03/21(火) 15:06:18ID:???本体かクラスのどっちかでrequireする人もいるわな。
011757
2006/03/21(火) 15:18:58ID:???自分はHTMLがガチャガチャになっちゃうのが嫌いです。なんというか
くだらないこだわりなんですけど、HTMLソースもひとつの作品だと思
っているところがあるんですよ。
>>116
自分はどっちかというとこのやり方かな。ファイル増やしてでもrequ-
ireします。
011857
2006/03/21(火) 15:25:28ID:???http://pc8.2ch.net/test/read.cgi/php/1017456911/の >>760 なのです。
実は受験勉強を理由に自分のスクリプトの開発を中断していたのですが、
2chをやめられず、参考書片手に書き込みをつづけていたのです。
自分で盛り上げておいて申し訳ないのですが、しばらく撤退します。「し
ばらく」というのが一浪明けになるかも知れませんが…スレが生きてたら
また復活します。
サヨウナラ。そして、アリガトウゴザイマシタ...
0120nobodyさん
2006/03/21(火) 16:05:31ID:???○ bbs
だった。すまん。
01211 ◆J0d1mE8o22
2006/03/22(水) 10:07:01ID:???いろいろ割り算プログラムを作ってたんですが、
割る数のほうに「0」を入れると、
「Warning: Division by zero in C:\Apache Group\Apache2\htdocs\test.php on line 18」
と表示されます。
意味がわからないのでyahoo翻訳してみたところ、
「警告:Cのゼロによる分割:第18行の上のApache GroupApache2htdocstest.php」
といわれました。
これは、記述が悪いんでしょうか?
どうも、仕様臭がプンプンするんですが・・・
0122nobodyさん
2006/03/22(水) 10:18:40ID:???身の回りで考えて味噌。
5つのリンゴを「0人で分ける」ってありえないでしょ。
っていうか、今の数学ではそういうことは教えない物なのか…
0123122
2006/03/22(水) 10:19:42ID:???0で割る事は出来ない
って言うのは、「数学上の仕様」 だと思っておきなさい
0124122
2006/03/22(水) 10:21:21ID:???「0除算」でググると吉
0125nobodyさん
2006/03/22(水) 10:42:25ID:???みなさんも書いているけど、0で割り算しちゃダメだから。
たとえば、3 / 0考えてみよう。
これは、日本語にすると、「3 の中に 0は幾つありますか?」ってことだよね。
答えは無限個。"3から0を何回引き算できるか"って考えても良い。
素直なコンピュータちゃんにソレをさせると、割り算からかえってこなくなってしまう。
なので、あらかじめ 0で割り算させないように中の人がチェックしているってわけ。
>>57さんや他の人が書込んだスクリプトには、ちゃんと 0のチェックが入っているよね?
それとも見もしないでふーんって感じだったのかな?
このスレのの>>74にも書いてあるね。
0126nobodyさん
2006/03/22(水) 19:59:34ID:???0127nobodyさん
2006/03/22(水) 22:30:11ID:???0128nobodyさん
2006/03/24(金) 14:57:11ID:???0129nobodyさん
2006/03/24(金) 20:42:36ID:???0130nobodyさん
2006/03/24(金) 22:28:28ID:yMDMUBGzなんとかしたかったんだろ?>>1よ
と>>1を擁護してみんとてするなり。
0131nobodyさん
2006/03/24(金) 22:41:08ID:???function & XML_unserialize(&$xml){
$xml_parser = &new XML();
$data = &$xml_parser->parse($xml);
$xml_parser->destruct();
return $data;}
function & XML_serialize(&$data, $level = 0, $prior_key = NULL){
if($level == 0){ ob_start(); echo '<?xml version="1.0" ?>',"\n"; }
while(list($key, $value) = each($data))
if(!strpos($key, ' attr')) #if it's not an attribute
#we don't treat attributes by themselves, so for an empty element
# that has attributes you still need to set the element to NULL
if(is_array($value) and array_key_exists(0, $value)){
XML_serialize($value, $level, $key);
}else{
$tag = $prior_key ? $prior_key : $key;
echo str_repeat("\t", $level),'<',$tag;
if(array_key_exists("$key attr", $data)){ #if there's an attribute for this element
while(list($attr_name, $attr_value) = each($data["$key attr"]))
echo ' ',$attr_name,'="',htmlspecialchars($attr_value),'"';
reset($data["$key attr"]);
}
if(is_null($value)) echo " />\n";
elseif(!is_array($value)) echo '>',htmlspecialchars($value),"</$tag>\n";
else echo ">\n",XML_serialize($value, $level+1),str_repeat("\t", $level),"</$tag>\n";
}
reset($data);
if($level == 0){ $str = &ob_get_contents(); ob_end_clean(); return $str; }}
?>
0132nobodyさん
2006/03/27(月) 00:42:25ID:???0133nobodyさん
2006/03/27(月) 05:54:25ID:???せいぜい誰かが作ったやつの改造が限界だった。
改造っていってもちょっとした事しか出来へんかったけど。
取りあえず>>1は匿名メールが限界だな。
0134nobodyさん
2006/03/27(月) 11:39:56ID:???0135nobodyさん
2006/03/27(月) 23:39:36ID:???0136nobodyさん
2006/03/27(月) 23:46:30ID:DbuZMvUM1に質問ぜめにされる前に、勉強法を言ったほうがいいお。
0137nobodyさん
2006/03/27(月) 23:49:08ID:???0138135
2006/03/28(火) 00:04:43ID:???サイトになじまない → そうだ自分で作ろう → PHP が簡単らしい →
レッツ → 小部屋 → マンモス PDF 最初のちょっとだけ → 日記できた
ここまでで中三の一学期くらいだったか。
ちなみに織れは新学期から工房。
ってか織れ自体オブジェクト指向ダメぽだから完全じゃないorz
ワンとかニャーとか意味不杉。 MySQL もダメ。
勉強法は三行目。 PHP 本とかは買ってない。立ち読みはしたけど。
0139nobodyさん
2006/03/28(火) 00:21:09ID:???0140nobodyさん
2006/03/28(火) 08:06:41ID:???俺はN88-BASICしかできなかった。
0142nobodyさん
2006/03/29(水) 08:57:08ID:???2ちゃんで宿題マンドクセーとかいいながらぬきまくりしたかったなー
0143nobodyさん
2006/03/29(水) 10:36:33ID:???で、今受験おわったとこだがほとんど文法忘れた・・・
0144nobodyさん
2006/03/30(木) 18:07:15ID:???掲示板を作る流れを解説しているページはないですか。
0145nobodyさん
2006/03/30(木) 18:26:37ID:???「作る流れ」ってなんだ?
考える⇒試す⇒考える⇒直す⇒試す⇒考える⇒考える⇒考える⇒ご飯食べる⇒考える⇒オナる⇒考える⇒寝る⇒忘れる
0146nobodyさん
2006/03/30(木) 18:40:09ID:E8C3tNeGいやいやいや、違。日本語がわるうござんした。
投稿フォーム→フォームの取得→フォームの内容チェック→フォームのフォーマット・・・
みたいなやつ。
0147nobodyさん
2006/03/30(木) 18:44:00ID:???基本は>>145がすべて書いてくれているわけだが、
1. フォームの表示->フォームデータの保存(保存形式とかサニタイズとかよく考える)
2. 保存データの表示
3. 1.2.を合体 とりあえずソレっぽくなる
4. いじってみて機能追加や見映え修正 場合によっては1.からやり直す
※それぞれの段階で他人のソースを眺めまくるのを忘れるな。一個じゃダメだ、色々見ろ。
0150!omikuji 1 ◆J0d1mE8o22
2006/03/32(土) 00:13:16ID:aP6p2VPR0151!omikuji
2006/03/32(土) 00:14:31ID:???0152nobodyさん
2006/04/03(月) 22:18:59ID:???0153nobodyさん
2006/04/04(火) 10:51:50ID:???0154nobodyさん
2006/04/09(日) 22:48:50ID:???0155nobodyさん
2006/04/09(日) 23:56:23ID:???0156nobodyさん
2006/04/11(火) 20:33:11ID:d7W9WoYbフォームで選択式につくったもので解答したあと
その解答がそのまま保持されるようにつくるにはどのようにすればいいのでしょうか?
例
選択肢 A
B
C
D
Cを選んで解答ボタン押したあとまた同じ画面が出てきて初めからCが選択されている状態。
宜しくお願いします。
01581 ◆J0d1mE8o22
2006/04/11(火) 21:24:12ID:f/RBAKknクッキーか?
0159nobodyさん
2006/04/11(火) 21:48:17ID:???0161nobodyさん
2006/04/13(木) 22:16:52ID:???大切な事が沢山あるでしょ? 女の子とデートするとか。
今はそういう方面にエネルギー使ったほうが好いと思うよ。
0163nobodyさん
2006/04/15(土) 16:40:58ID:???0165nobodyさん
2006/04/15(土) 22:01:32ID:Zr3lXyoF0166nobodyさん
2006/04/15(土) 22:11:00ID:???■ このスレッドは過去ログ倉庫に格納されています