PHPの問題-GETパラメータの値が適切に判定されない

このQ&Aのポイント
  • PHPの処理でGETパラメータの値が適切に判定されず、不正な挙動が発生する問題が発生しています。
  • 具体的には、$GET['type']が"login"であっても、"tutorial_hsp"と同じ挙動をしてしまいます。
  • 提供されているスクリプトの条件分岐のロジックに問題があり、正しい判定が行われていない可能性があります。
回答を見る
  • ベストアンサー

PHPがおかしい

$GET['type']が"login"でも"tutorial_hsp"と同じ挙動をしてしまいます。 部分のスクリプトはこんな感じです。 if(!isset($_GET['type'])){ echo "<h2>14ちゃんねるデベロッパーメニュー</h2>"; echo "<p><a href=\"menu.php?type=tutorial_hsp\">14ちゃんねるの扱い方<a href=\"https://hsp.tv\">(HSP)</a></a></p>"; echo "<p><a href=\"https://ux.getuploader.com/14channel/\">作ったツールのアップロード(別サイトに飛びます)</a></p>"; echo "<p><a href=\"../program\">作ったツールの宣伝</a></p>"; }else{ if($_GET['type'] = "tutorial_hsp"){ echo "<h2>14ちゃんねるの扱い方(HSP)</h2>"; echo "<p>"; echo "まずは、<a href=\"hsp.tv\">HSP</a>をインストールしてください。<br>"; echo "そうしたら、「HSPスクリプトエディタ」を開いて、以下のスクリプトを入力してください。"; echo "</p>"; echo "続きは制作中です..."; }else{ if($_GET['type'] = "login"){ echo "<h2>404 Not Found</h2>"; } } } URL: http://arkmonster.r.ribbon.to/developer/menu.php?type=login

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

なので、整理すると、 $type=isset($_GET['type'])? $_GET['type']:false; で一度代入するか? 中に丸ごと入れてしまうか? switch(isset($_GET['type'])? $_GET['type']:false) { case false: パラメタがなかった時の処理 break; case 'tutorial_hsp': case 'login': 各処理 break; } あと、 特に変数が関係していないのにダブルクオートを使ってるので、 if($_GET['type'] = "tutorial_hsp"){ こういう場合が適切な時でも、シングルクオートで if($_GET['type'] = 'tutorial_hsp'){ の方が、速度が速いですよ。 連続3連投稿しちゃったので、これにて自粛~!

nennneko5787
質問者

お礼

ありがとうございます!解決しました!

その他の回答 (2)

回答No.2

おまけ if(!isset($_GET['type'])){ これ、あちこちに書くと面倒の種にしかならないので。 if(isset($_GET['type'])){ $type=$_GET['type']; }else{ $type=false; } 3連書式なら、 $type=isset($_GET['type'])? $_GET['type']:false; でまとめたほうがいいですよ。 PHPでデバッガーでトレースする時、 あちこちにあると、トラブルの元にしかならないので。 または最低でも define("TYPE","type"); などと、宣言化するのもありでしょう。 水商売のじじいからのコメントです。

nennneko5787
質問者

お礼

ありがとうございます。

回答No.1

> if($_GET['type'] = "tutorial_hsp"){ ”=”が一つなので、代入してます。 比較なら”==”です。 型チェックあり比較は”===” です。 一発解決で、ごめんね。

nennneko5787
質問者

お礼

ありがとうございます。

関連するQ&A

  • PHP PCでログインできたのに、スマホから無理

    PCからは既存アカウントでログインできるのですが、スマホからログインできません。 もちろんスマホ用サイトにも同様のスクリプトを書いております。 PCでは、ブラウザ:Google Chrome スマホのOSは、Android4.3 です。 ログインスクリプトは下記のようなものです。ちなみにこのスクリプトはスマホ用の方です。 -------------------------------------------------------------------------------------------- <?php session_start(); //////////////////// // POST変数の取得 // //////////////////// $login_id = (isset($_POST['login_id']))? $_POST['login_id'] : ""; $password = (isset($_POST['password']))? $_POST['password'] : ""; /* var_dump($login_id); var_dump($password); exit; */ if($login_id!=="" and $password!==""){ //////////////////////// // データベースを検索 // //////////////////////// $con = mysql_connect("~", "~", "~"); mysql_select_db("LAA0471050-shopcart"); mysql_set_charset('utf8'); $sql = "SET NAMES utf-8"; mysql_query($sql); $sql = "SELECT * FROM member_profile;"; $result = mysql_query($sql, $con) or die(mysql_error()); $rowco = mysql_num_rows($result); for($i=0; $i<$rowco; $i++){ $row = mysql_fetch_row($result); // 取得された行に対応する配列を返し、内部のデータポインタを前に進める if($login_id===$row[4] && $password===$row[5]){ // IDとパスワードが両方一致していた場合 $_SESSION['login'] = 1; // ログイン状態にする // setcookie("id", $login_id, time()+60*60*24*365); // アカウント用のクッキーの有効期限は一年間 // setcookie("pass", $password, time()+60*60*24*365); $_SESSION['login_id'] = $login_id; // メールアドレス header("Location: mypage.php?login_id=$login_id"); }else{ // header("Location: login.php"); // echo 'error'; } } mysql_close($con); // データベースとの接続を解除する } ?> <!doctype html> <html> <head><title>ログインページ</title> <meta charset="utf-8"> <!-- ◆ スマートフォン用 --> <meta name="viewport" content="width=device-width, initial-scale=1" /> <!-- jQuery本体--> <script type="text/javascript" src="./jquery/jquery-2.1.3.js"></script> <!-- スマホ用スタイルシート --> <link rel="stylesheet" href="./jquery/jquery.mobile-1.4.5.min.css" /> <!-- スマホ用JavaScript --> <script src="./jquery/jquery.mobile-1.4.5.min.js"></script> </head> <body bgcolor="#FFFFCC"> <br> <?php for($i=0; $i<60; $i++){ echo '&nbsp'; } if($_SESSION['login']!==1){ echo '<a href="membership_form.php"><img src="./images/shinki.png" border="0"></a>'; echo '&nbsp;<a href="login.php"><img src="./images/login.png" border="0"></a>'; }else{ // ログインしてれば echo '<a href="mypage.php"><img src="./images/mypage.png" border="0"></a>'; echo '&nbsp;<a href="logout.php"><img src="./images/logout.png" border="0"></a>'; } ?> <br><br> <?php ////////////// // 表の表示 // ////////////// echo '<center>'; echo '<table width="320" cellpadding="0" cellspacing="0" border="0">'; echo '<tr rowspan="10" width="320">'; // ⇐ このrowspan="14"で、⇒の画像などを幅寄せできる【重要】 echo '<form name="form1" method="post" action="login.php">'; echo '<tr><td><img src="./images/login_bar.png" width="100%"></td></tr>'; echo '<tr><td width="320" height="20" class="line1">ログインID(メールアドレス)</td></tr>'; echo '<tr>'; echo '<td width="320" height="20" align="middle">'; echo '<input type="text" class="yokohaba" name="login_id" id="login_id" size="75" tabindex="1">'; echo '</td>'; echo '</tr>'; echo '<td width="320" height="20" class="line1">パスワード</td>'; echo '</tr>'; echo '<tr>'; echo '<td width="320" height="20" align="middle">'; //echo '<input type="password" class="yokohaba" name="password" id="password" size="75" tabindex="2" value="'.$_COOKIE['pass'].'">'; echo '<input type="password" class="yokohaba" name="password" id="password" size="75" tabindex="2">'; echo '</td>'; echo '</tr>'; echo '<tr><td width="320" height="20" align="middle">'; echo '<a href="JavaScript:document.form1.submit()" onclick="location.href=\'login.php\'"><img src="./images/login_send.png" border="0" tabindex="3" width="100%"></a>'; echo '</td></tr>'; echo '</form>'; echo '</table>'; ?> <br><br> <center><a href="top.php">トップページ</a></center> </center> </body> </html> どこがどう間違っているのか、ご指導お願い致します。

    • 締切済み
    • PHP
  • phpについて

    phpで質問です。 データベースから引っ張ってきたデータを while文の中にechoでa href="article?tag=row[3]"を表示させたいのですがどうすればいいですか? while( $row = $res->fetchArray() ) { echo '<a class="link_button" href="articletable?tag='.$row[3].'" method="get"">'.$row[3].'<span>'.'</a>'.''<a class="link_button" href="articletable?tag='.$row[4].'" method="get"">'.$row[4].'<span>'.'</a>' } また、if文でrow3もしくはrow4がnull(何も書いていない)の時, 強制的に「a href="article?tag=more」にさせたいのですがどうすればいいですか?

    • ベストアンサー
    • PHP
  • PHPとaccesskey

    携帯向けのHPを作っています。 1枚1枚画像が表示される簡易フォトアルバムを Sapphirus.Biz(http://www.sapphirus.biz/)さんの 所からお借りしています。 大体は思う通りになってきたのですが、 ひとつだけどうしてもわからないところがあります。 携帯で3を押したら前や次のページに 飛ぶようにしたいのですが、 例えば <?php //ページめくり用スクリプト部分(前へ) if($prev){ echo"&#xE522;<a href=\"?$dataDir|$prev\">前へ</a>"; }else{ echo"&#xE522;前へ"; } の echo"&#xE522;<a href=\"?$dataDir|$prev\">前へ</a>"; を echo"&#xE522;<a href=\"?$dataDir|$prev\" accesskey="1">前へ</a>"; のようにすると""の前の\のせいか 画像もリンクも見えなくなってしまいます。 (全く白紙のページしか見えなくなる) どうしたらいいでしょうか? 以下ソース <?php //設定 $contents='album.txt'; //タブ区切りのテキストファイル名 //メイン header("Content-type: text/html; charset=SJIS"); $query=$_SERVER['QUERY_STRING']; if(!$query) exit('ディレクトリが指定されていません'); elseif(!strstr("|",$query)){ list($dataDir,$no)=explode("|",$query); }else{ $dataDir=$query; } $data=@file("$dataDir/$contents")or exit('データファイルが開けません'); $total=count($data); if(!$no) $no=1; list($file)=explode("\t",rtrim(mb_convert_encoding($data[$no-1],'SJIS'))); $image="$dataDir/$file"; list(,,,$attr)=@getimagesize($file); if($no>1) $prev=$no-1; if($no<$total) $next=$no+1; /* ここから下が表示用HTMLです */?> <head> <title>タイトル</title> <link href="../style.css" rel="stylesheet" type="text/css"> </head> <body> <div id="MAINLAYOUT"> <center> <?=$no?>/<?=$total?><br> <!-- イメージ表示 --> <div id="IMG"><img src="<?=$image?>" alt="<?=$file?>" <?=$attr?> /></div> <?php //ページめくり用スクリプト部分(前へ) if($prev){ echo"&#xE522;<a href=\"?$dataDir|$prev\">前へ</a>"; }else{ echo"&#xE522;前へ"; } //ページめくり(前へ)ここまで ?> - <?php //ページめくり用スクリプト部分(次へ) if($next){ echo"&#xE524;<a href="\?$dataDir|$next\">次へ</a>"; }else{ echo"&#xE524;次へ"; } //ページめくり(次へ)ここまで ?> <hr> &#xE523;<a href="menu.htm" accesskey="2">メニューへ</a><br> <hr> &#xE5AC;<a href="index.htm" accesskey="0">Topへ</a> </center> </body> </html>

    • ベストアンサー
    • PHP
  • PHP&MySQLデータ削除のスクリプトについて

    はじめまして。 PHP、MySQL始めたばかりの初心者です。 この度、自力で解決出来なく、質問させて頂く事にしました。 現在、MySQL入門以前という参考書を見ながらデータベースを作っていました。削除スクリプトで、どうしても躓いておりまして何が原因が分からずじまいです。下記が呼び出しスクリプトです --------------------------ここから--------------------------- <?php extract($_GET); mysql_connect('localhost','root','xxxxx'); mysql_select_db('xxxxx'); $sql = "select * from xxxxx where id = '{$id}'"; $result = mysql_query($sql); $rows = mysql_num_rows($result); if($rows == 0){ echo "検索データが見つかりませんでした。"; exit; } else { while($row = mysql_fetch_array($result)){ echo "<h2> " , $row["title"] , "</h2>"; echo "<p><font size=\"-2\">#", $row["id"] ," ●",$row["tourokubi"] ,"</font></p>\n"; echo "<p><div class=\"hon\">", nl2br($row["honbun"]), "</div></p>"; echo "<div class=\"key\">keywords: ", nl2br($row["keyword"]), "</div>"; $ukid=$row["id"]; echo "<center> <a href=\"j_sakujo1.php?i=$ukid\"><img src=\"sakujobutton.gif\" alt=\"削除ボタン\" border=0></a>  <a href=\"correct.php?i=$ukid\"><img src=\"shuseibutton.gif\" alt=\"修正ボタン\" border=0></a>  </center>"; } } ?> --------------------------ここまで--------------------------- そして削除スクリプトです --------------------------ここから--------------------------- <?php extract($_POST); extract($_GET); mysql_connect('localhost','root','xxxxx'); mysql_select_db('xxxxx'); //MySQLレコード削除 if($kakunin=="確認"){ $sql = "delete from xxxxx where id = '{$id}'"; mysql_query($sql); echo "レコードの削除が完了しました"; exit; } //削除確認のためのフォーム $sql = "select * from xxxxx where id = '{$id}'"; $result = mysql_query($sql); $rows = mysql_num_rows($result); if($rows == 0){ echo "<p>該当データがありません。</p>"; } else{ while($row = mysql_fetch_array($result)){ echo "<p>このレコードを削除します。</p>"; echo "<form action = \"j_sakujo1.php\" method = \"post\">"; echo "<p>登録日:"; echo $row["tourokubi"]; echo "</p>"; echo "<p>タイトル:"; echo $row["title"]; echo "</p>"; echo "<p>本文:"; echo $row["honbun"]; echo "</p>"; echo "<p>キーワード:"; echo $row["keyword"]; echo "</p>"; echo "<input type = \"hidden\" name = \"ren\" value =\""; echo $row["renban"]; echo "\">"; echo "<p><input type=\"submit\" name=\"kakunin\" value=\"確認\">"; echo "<input type=\"reset\" value=\"リセット\"></p>"; echo "</form>"; } } ?> --------------------------ここまで--------------------------- これで削除ボタンを押すと「該当データがありません。」だけ表示され 登録してあるデータがまったく表示されません。 どこで間違ったのか、どうかご指南お願い致します。

  • スマホ向け検索サイトのPOST変数について

    <?php session_start(); //////////////////// // POST変数の取得 // //////////////////// if(isset($_POST['login_id'])){ //if($_POST['login_id']!==""){ $login_id = $_POST['login_id']; setcookie("id", $login_id, time()+60*60*24*365); // アカウント用のクッキーの有効期限は一年間 } if(isset($_POST['passwd'])){ //if($_POST['password']!==""){ $passwd = (int)$_POST['passwd']; setcookie("passwd", $passwd, time()+60*60*24*365); } var_dump($_POST['login_id']); var_dump($_POST['passwd']); //////////////////////// // データベースを検索 // //////////////////////// $con = mysql_connect("", "", ""); mysql_select_db(""); mysql_set_charset('utf8'); $sql = "SET NAMES utf-8"; mysql_query($sql); $sql = "SELECT * FROM user_profile;"; $result = mysql_query($sql, $con) or die(mysql_error()); $rowco = mysql_num_rows($result); for($i=0; $i<$rowco; $i++){ $row = mysql_fetch_row($result); // 取得された行に対応する配列を返し、内部のデータポインタを前に進める if($login_id===$row[1] && $password===(int)$row[2]){ // IDとパスワードが両方一致していた場合 $_SESSION['login'] = 1; // ログイン状態にする $_SESSION['login_id'] = $login_id; // メールアドレス header("Location: hospital.php?login=1"); }/*else{ header("Location: login.php"); }*/ } mysql_close($con); // データベースとの接続を解除する //var_dump($row[1]); //var_dump($row[2]); ?> <!doctype html> <html> <head><title>ログインページ</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link rel="stylesheet" type="text/css" href="bootstrap.css"> <script type="text/javascript" src="jquery-2.1.3.js"></script> <link rel="stylesheet" href="jquery.mobile-1.4.5.min.css" /> <script src="jquery.mobile-1.4.5.min.js"></script> <script type="text/javascript" src="http://code.jquery.com/jquery-migrate-1.1.0.js"></script> <script type="text/javascript" src="bootstrap.js"></script> </head> <body> <br> <div class="mojis2"> <?php for($i=0; $i<2; $i++){ echo '&nbsp'; } ?> 美容整形に失敗しないための口コミサイト </div> if($_SESSION['login']!==1){ echo '<a href="shinki.php"><img src="../image/shinki.png" border="0"></a>'; echo '&nbsp;<a href="login.php"><img src="../image/login.png" border="0"></a>'; }else{ // ログインしてれば echo '<a href="mypage.php"><img src="../image/mypage.png" border="0"></a>'; echo '&nbsp;<a href="logout.php"><img src="../image/logout.png" border="0"></a>'; } ?> <br><br> <center> <?php // タブナビゲーション(上部) echo '<div id="centeredmenu2">'; echo '<ul class="nav nav-tabs">'; if($_SESSION['login']===1) echo '<li><a href="hospital.php?login=1">ホーム</a></li>'; else echo '<li><a href="hospital.php?login=0">ホーム</a></li>'; echo '<li class="active"><a href="login.php">ログイン</a></li>'; echo '</ul>'; echo '</div>'; echo '<br>'; ////////////// // 表の表示 // ////////////// echo '<table width="360" cellpadding="0" cellspacing="0" border="0">'; echo '<tr>'; echo '<th rowspan="14" width="360" align="right" valign="top">'; echo '<table width="360" border="0">'; echo '<form name="form1" method="POST" action="login.php">'; //echo '<form name="form1" method="post" action="login.php">'; echo '<tr><td><img src="../image/login_bar.png"></td></tr>'; echo '<tr>'; echo '<td width="360" height="40" class="line1">ログインID(メールアドレス)</td>'; echo '</tr>'; echo '<tr>'; echo '<td width="360" height="40" align="middle">'; echo '<input type="text" class="yokohaba" name="login_id" id="login_id" tabindex="1" value="'.$_COOKIE["id"].'">'; echo '</td>'; echo '</tr>'; echo '<td width="360" height="40" class="line1">パスワード</td>'; echo '</tr>'; echo '<tr>'; echo '<td width="360" height="40" align="middle">'; echo '<input type="password" class="yokohaba" name="passwd" id="passwd" tabindex="2" value="'.$_COOKIE["passwd"].'">'; echo '</td>'; echo '</tr>'; echo '<tr><td width="360" height="40" align="middle">'; echo '<a href="JavaScript:document.form1.submit()" onclick="location.href=\'login.php\'"><img src="../image/login_send.png" border="0"></a>'; echo '</td></tr>'; echo '</form>'; echo '</table>'; ------------------- スマホ向けの検索サイトで、 上記のPHPスクリプトで、var_dump()した値がNULLと表示れます。 DBのデータと、ID,パスが一致したら、トップページにジャンプするようにしたいのですが、 どこがまちがっているのでしょうか?

    • 締切済み
    • PHP
  • パスワード認証ページ作りたい(basic認証でない)

    フリーのものを使ってパスワード認証ページ(basic認証でない)を作ろうとしています。しかし、うまく動いてくれません…何がいけないのでしょうか?どうかご教授下さい。ちなみにここのサンプルです。 http://www.jetman.jp/passwd.php <?php $user_pass = "test"; $ok = "ok.htm"; $error = "error.htm"; $script = "login.php"; $doc_title = "テスト"; if(!isset($ver)) { $ver = '1.05.1'; } if(!isset($pass)) { $pass = $user_pass; // パスを指定 if($passwd == $pass) { header("Location: $ok"); // OKなら } elseif($passwd) { header("Location: $error"); // NGなら } } ?> <html> <head> <title><?php echo $doc_title; ?></title> <meta http-equiv="Content-Type" content="text/html;Charset=Shift_JIS"> <script type="text/javascript"> <!-- function check() { if(document.formxx.passwd.value.length == 0) { alert("パスワードが入力されてません"); return false; } return true; } //--> </script> </head> <body> <h3><?php echo $doc_title; ?></h3> <form action="<?php echo $script; ?>" method="post" name="formxx"> <input type="password" name="passwd" size="15"> <input type="submit" value=" login " onClick="check()"> <form> <p style="font-size:10px"><a href="http://www.jetman.jp/">プチログイン version:<? echo $ver; ?></a></p> </body> </html>

    • ベストアンサー
    • PHP
  • HTMLページにPHPで処理した結果を表示したい

    以下の【HTML】内にPHPの結果を表示したいと思い、試行錯誤していますが、うまくできません。 ※http://xxx.com/ISL/ISLPage.php?query1=apple をブラウザで実行すると正常に表示されます。 たぶん、header("Content-type: application/x-javascript"); を 【ISLPage.php】か【ISLModule.php】のどこかに書きこんで 【ISLModule.php】の$html []= あたりに、echo "document.write・・・ に直せば できそうな気がするのですが、具体的にどうすれば、表示されるかが分かりません。(>_<;) 既に数十回トライしましたが、どうしてもダメでしたので、どうかご教示いただければと思います。 申し訳ございませんが、どうかよろしくお願い致します。 【HTML】 <html> <body> </body> <script type="http://xxx.com/ISL/ISLPage.php?query1=apple"></script> </html> 【ISLPage.php】 <html> <body> <?php include_once("./ISLModule.php"); echo $_GET['query1']; new ISLModule(array( "query" => $_GET['query1'], "hits" => 3 )); ?> </body> </html> 【ISLModule.php】 <?php class ISLModule { function __construct($param = array()) { $results = array(); if ($param['query'] != "") { $query4url = rawurlencode($param['query']); try { $url = "http://xxxxx/ … buildQuery($param); $xml = simplexml_load_file($url); if ($xml["totalResultsReturned"] != 0) { $results = $xml->Result->Hit; } } catch(Exception $e) { } } $result['query'] = $param['query']; $result["results"] = $results; ISLModule::display($result); } function display($param = array()) { $html = array(); $html []= "<div class=\"YSAPISDK\">"; $html []= "<div class=\"ISLModule\">"; $html []= "<h1>「" . h($param['query']) . "」の検索結果</h1>"; foreach ($param["results"] as $result) { $html []= "<div class=\"Item\">"; $html []= "<p><a href=\"" . h($result->Url) . "\"><img src=\"" . h($result->Image->Small) . "\" /></a></p>"; $html []= "<h2><a href=\"". h($result->Url) . "\">" . h($result->Name) . "</a></h2>"; if (!is_null($result->PriceLabel->SalePrice)) { $html []= "<p class=\"Price\">". h($result->Price). "円</p>"; } $html []= "</div>"; } $html []= "</div>"; $html []= "</div>"; echo join("\n", $html); } } ?>

    • 締切済み
    • PHP
  • phpコードを解説して欲しいです。$str 多く困

    $str = '<h3 id="trackbacks">Trackback</h3>'; $str .= '<ol class="trackback-list" id="custom-trackback">'; $i = 0; foreach ( $comments as $comment ) { if ( get_comment_type() != 'comment' ) { $str .= '<li class="clearfix" id="comment-' . get_comment_ID() . '">'; $str .= '<div class="trackback-author">'; $str .= '<p class="comment-author-name">'; $comment_author_url = $comment->comment_author_url; $comment_author = $comment->comment_author; if ( $comment_author_url ) { $str .= '<a href="' . esc_url( $comment_author_url ) . '" target="_blank" title="' . esc_attr( $comment_author ) . '">'; $str .= esc_html( $comment_author ); $str .= '</a>'; } else { $str .= esc_html( $comment_author ); } $str .= '</p>'; $str .= '<p class="comment-meta">' . '<a href="' . esc_url( get_comment_link( $comment->comment_ID ) ) . '">' . get_comment_date() .'<span>'. get_comment_time() . '</span><a class="edit" href="' . get_edit_comment_link() . '">(編集)</a></span></p>'; $str .='</div>'; $str .= '<div class="trackback-body">'; if ( $comment->comment_approved == '0' ) { $str .= '<p class="attention"><em>あなたのトラックバックは承認待ちです。</em></p>'; } $str .= '<p>' . esc_html( get_comment_text() ) . '</p>'; $str .= '</div>'; $str .= '</li>'; $i++; } } $str .= '</ol>'; if ( $i > 0 ) { echo $str;

    • 締切済み
    • PHP
  • PHP

    PHPで <p>曜日</p> <p> <input type="checkbox" name="youbi[]" value="1" <?php if(strstr($result[4],'1')) echo"checked"; ?>>月 <input type="checkbox" name="youbi[]" value="2" <?php if(strstr($result[4], '2')) echo"checked"; ?>>火 <input type="checkbox" name="youbi[]" value="3" <?php if(strstr($result[4],'3')) echo"checked"; ?>>水 <input type="checkbox" name="youbi[]" value="4" <?php if(strstr($result[4],'4')) echo"checked"; ?>>木 <input type="checkbox" name="youbi[]" value="5" <?php if(strstr($result[4],'5')) echo"checked"; ?>>金 <input type="checkbox" name="youbi[]" value="6" <?php if(strstr($result[4],'6')) echo"checked"; ?>>土 <input type="checkbox" name="youbi[]" value="0" <?php if(strstr($result[4],'0')) echo"checked"; ?>>日 </p> <p>時間</p> <p> <input type="submit" value="設定" /> とやると日曜日を選択してsubmitするとチェックが外れます。なぜでしょうか?

    • ベストアンサー
    • PHP
  • WP トップページに投函した画像を表示

    トップページに最新記事を並びます。 下記のプログラムはタイトルと記事の抜粋のみです。 記事内にある画像を表示するにはどうすれば良いでしょうか? アイキャッチ画像とは別にしたいです。 宜しくお願いします。 <?php $cat = 'info'; //スラッグ $num = '5'; //記事表示数 global $post; $term_id = get_category_by_slug($cat)->term_id; $myposts = get_posts('numberposts=' .$num. '&category_name=' .$cat); if ($myposts) { echo '<ul>'; foreach($myposts as $post): setup_postdata($post); echo '<li><a href=' .get_permalink(). '>'; echo '</a>'; echo '<h4><a href='.get_permalink().'>'. the_title("","",false).'</a></h4>'; echo '<p>' .mb_substr( strip_tags( $post -> post_content ), 0, 30 ). '...</p></li>'; endforeach; echo '</ul>'; } ?>

    • ベストアンサー
    • PHP

専門家に質問してみよう