0

現在のページ URL を取得するための php コードを配置しました。このコードを記述して現在のページ URL を取得できるようになりました。

<?php print(selfURL()); ?>

さて、入力フィールドのデフォルト値としてこのコードをどのように書くことができるか知りたいですか? 実際には、入力フィールドに現在のページ URL が自動的に入力されるようにしたいと考えています。

シンプルに使用する<?php print(selfURL()); ?>value="<?php print(selfURL()); ?>"、テキストが表示され、現在のURLは表示されません。しかし、別の場所に貼り付けると、正常に機能します。

助言がありますか?

アップデート:

みんな、これはページの完全なコードです。役立つかもしれません!

<?php
function selfURL() { $s = empty($_SERVER["HTTPS"]) ? '' : ($_SERVER["HTTPS"] == "on") ? "s" : ""; $protocol = strleft(strtolower($_SERVER["SERVER_PROTOCOL"]), "/").$s; $port = ($_SERVER["SERVER_PORT"] == "80") ? "" : (":".$_SERVER["SERVER_PORT"]); return $protocol."://".$_SERVER['SERVER_NAME'].$port.$_SERVER['REQUEST_URI']; } function strleft($s1, $s2) { return substr($s1, 0, strpos($s1, $s2)); }
?>
<?php 
// Start YOURLS engine
require_once( dirname(__FILE__).'/includes/load-yourls.php' );
?>
<!DOCTYPE html>
<html>
<head>
<title>YOURLS Public Interface Sample</title>
<style>
body {
    background:#E3F3FF;
    color:#595441;
    font:16px/30px verdana,arial,sans-serif;
}
a, a:visited {color:#2A85B3}
h1 {text-align:center; color:#2A85B3}
h2 {
    border-bottom:1px solid #2A85B3;
    color:#2A85B3;
    margin-left:-10px;
    padding-left:25px;
    width:80%;
}
#container {
    width: 780px;
    margin-left: auto;
    margin-right: auto; 
    background-color: #fff;
    border: 3px solid #2A85B3;
    padding: 10px;
    margin-top: -13px;
    -moz-border-radius:15px;
    -webkit-border-radius:15px;
}
#footer {
    text-align:center;
    margin-top:20px;
}
#footer p {
    padding:5px;
    background:white;
    margin:0 auto;
    width:750px;
    -moz-border-radius:10px;
    border-radius:10px;
    -webkit-border-radius:10px;
    border:1px solid #2A85B3;
    -moz-border-radius-bottomleft:35px;
    -moz-border-radius-bottomright:35px;
    -webkit-border-bottom-left-radius:25px;
    -webkit-border-bottom-right-radius:25px;
}
#footer p a {
    background:#fff url(http://yourls.org/images/favicon.gif) 2px center no-repeat;
    padding-left:20px;
}
div#copybox { width:600px; height:auto;}
div#sharebox {height:auto; width:600px; margin-top:20px;}
</style>
<link rel="stylesheet" href="<?php echo YOURLS_SITE; ?>/css/share.css?v=<?php echo YOURLS_VERSION; ?>" type="text/css" media="screen" />
<script src="<?php echo YOURLS_SITE; ?>/js/jquery-1.6.1.min.js" type="text/javascript"></script>
<script src="<?php echo YOURLS_SITE; ?>/js/ZeroClipboard.js?v=<?php echo YOURLS_VERSION; ?>" type="text/javascript"></script>
<script type="text/javascript">ZeroClipboard.setMoviePath( '<?php echo YOURLS_SITE; ?>/js/ZeroClipboard.swf' );</script>
<script src="<?php echo YOURLS_SITE; ?>/js/share.js?v=<?php echo YOURLS_VERSION; ?>" type="text/javascript"></script>
</head>

<body>
<h1>YOURLS: Your Own URL Shortener</h1>

<div id="container">

    <?php

    // Part to be executed if FORM has been submitted
    if ( isset($_REQUEST['url']) ) {

        $url     = yourls_sanitize_url( $_REQUEST['url'] );

        $return  = yourls_add_new_link( $url );

        $shorturl = isset( $return['shorturl'] ) ? $return['shorturl'] : '';


        echo <<<RESULT
        <h2>URL has been shortened</h2>
        <p>Original URL: <code><a href="$url">$url</a></code></p>
        <p>Short URL: <code><a href="$shorturl">$shorturl</a></code></p>

RESULT;



    // Part to be executed when no form has been submitted
    } else {

        $site = YOURLS_SITE;

        echo <<<HTML
        <h2>Enter a new URL to shorten</h2>
        <form method="post" action="">
        <p><label>URL: <input type="text" name="url" value="<?php echo selfURL(); ?>" size="70" /></label></p>
        <p><label>Optional custom keyword: $site/<input type="text" name="keyword" size="8" /></label></p>
        <p><label>Optional title: <input type="text" name="title" size="57" /></label></p>
        <p><input type="submit" value="Shorten" /></p>
        </form> 
HTML;

    }

    ?>


</div>





<?php print(selfURL()); ?>

</body>
</html>
4

3 に答える 3

2

これを試して、

<input name="textVal" type="text" val=<?php echo selfURL(); ?> />
于 2013-01-09T09:04:10.563 に答える
1

以下のように使えます。

方法 1

 <input name="myinput" type = "text" value = "<?php print(selfURL()); ?>" />

方法 2

<input name="myinput" type = "text" value = "<?php echo selfURL(); ?>" />

質問が更新された後の回答

<input type="text" name="" id="" value="<?php echo $_SERVER['PHP_SELF']; ?>"/>
于 2013-01-09T09:05:26.020 に答える
0

以下は解決策です:

$_SERVER['PHP_SELF'];
テストされたコードは以下の通りです

<input type="text" name="" id="" value="<?php echo $_SERVER['PHP_SELF']; ?>"/>

あなたのコード編集

$var = $_SERVER['PHP_SELF'];
OR
$var = selfURL();

<p><label>URL: <input type="text" name="url" value="$var" size="70" /></label></p>

her-doc 構文内に php を追加していますが、それがエラーです

于 2013-01-09T09:04:53.013 に答える