繁体   English   中英

在SCRIPT TAG内执行PHP

[英]Execute PHP inside SCRIPT TAG

我有一个列表框,显示以下格式的几个实习机会

id-名称:1-计算机科学

到目前为止,我已经创建了函数addRow以便从表单更新我的字段。 如果我做

警报($ montext)

我可以显示“ 1-Computer Science”,但我只在寻找值“ 1”。 我试过了 :

alert(<?php substr($montext,0,2)?>);

但是似乎“脚本”中的php没有被执行。

因为以下代码更改了字段中的值:

document.getElementById('ti').value=$montext;

因为我也想在脚本TAG中执行php代码。

我正在Apache下运行。

如果您能帮助我。 谢谢

在此查找使用的代码。

   <html>
    <head>
    <script>
    function addRow(title,text,description,id) {
        $montext=$( "#idStage option:selected" ).text();
        alert($montext);
        document.getElementById('ti').value=$montext;
            /*document.getElementById('te').value=text;
            document.getElementById('de').value=description;
            document.getElementById('id').value=id;*/
    }

        function setText(title,text,description,id){

            document.getElementById('title').value=title;
            document.getElementById('text').value=text;
            document.getElementById('description').value=description;
            document.getElementById('id').value=id;
        }
   </script>
   </head>
   <body>
   <?php
        include('../admin/connect_db.php');
    ?>
    <table cellpadding="0" cellspacing="0">
      <tr>
          <td>
          <label class="notBold">Choose the internship you want to update: </label>
                <select name="idStage" id="idStage" onChange="addRow()">
                <?php
                    $stmt = $db->stmt_init();
                    if($stmt->prepare('SELECT id, title,text,description FROM offre ORDER by published_date ASC')) {
                        $stmt->bind_result($id,$title,$text,$description);
                        $stmt->execute();
                        while($stmt->fetch()){
                ?>
                            <option id="nostage" value="<?php echo$id;?>" onclick="setText('<?php echo $title ?>',' <?php echo $text ?> ',' <?php echo $description ?>',' <?php echo $id?>');"><?php echo $id." - ".$title;?></option>
                <?php       
                        }
                        $stmt->close();
                    }
                ?>
                </select>&nbsp;

        </td>
        <td width="20">
            <img src="./Image/exit.png" title="Close" id="closeDelete" class="closeOpt" onclick="closeOpt()" />
        </td>
    </tr>
</table>

        <form method="post" action="modifystage.php">
        <table>
        <tr>
            <td>
            <input type = "hidden" id ="id" name="id"/>
            </td>
        </tr>
        <tr>
            <td class="label">
                <label>Title&nbsp;&nbsp;</label>
                <textarea id = "ti" name="ti" rows = "3" cols = "75">
                <?php 
                $stmt = $db->stmt_init();
                    if($stmt->prepare('SELECT id, title,text,description FROM offre ORDER by published_date ASC')) {
                        $stmt->bind_result($id,$title,$text,$description);
                        $stmt->execute();
                        }
                    echo $title;
                ?>
                </textarea>
            </td>
        </tr>
        <tr> 
            <td class="label">
                <label>Desc</label>

                <textarea id = "de" name="de" rows = "3" cols = "75">
                <?php 
                $stmt = $db->stmt_init();
                    if($stmt->prepare('SELECT id, title,text,description FROM offre ORDER by published_date ASC')) {
                        $stmt->bind_result($id,$title,$text,$description);
                        $stmt->execute();
                        }
                    echo $description;
                ?>
                </textarea>
            </td>
        </tr>    
        <tr>
            <td class="label">
                <label>Text&nbsp;&nbsp;</label>
                <textarea id = "te" name="te" rows = "3" cols = "75">
                <?php 
                $stmt = $db->stmt_init();
                    if($stmt->prepare('SELECT id, title,text,description FROM offre ORDER by published_date ASC')) {
                        $stmt->bind_result($id,$title,$text,$description);
                        $stmt->execute();
                        }
                    echo $text;
                ?>
                </textarea>
            </td>
        </tr>
        <tr>
            <td colspan="2" align="right"colspan="2" class="label">
                <button type="submit">Submit</button>
            </td>
        </tr>
        </table>
        </form>
</body>
</html>

您无需在此处使用PHP。 使用javascript substring功能substring : //www.w3schools.com/jsref/jsref_substring.asp

例如

alert(montext.substring(0, 2));

在下面的PHP上编写<script>并尝试以下操作:

<script>
    function addRow(title,text,description,id) {
        var montext = $( "#idStage" ).text();
        alert(montext);
        document.getElementById('ti').value(montext);
            /*document.getElementById('te').value=text;
            document.getElementById('de').value=description;
            document.getElementById('id').value=id;*/
    }

    function setText(title,text,description,id){

        document.getElementById('title').value=title;
        document.getElementById('text').value=text;
        document.getElementById('description').value=description;
        document.getElementById('id').value=id;
    }
</script>

如果您想从PHP调用变量,请不要忘记使用echo这样的代码:

alert("<?php echo substr($montext,0,2); ?>");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM