1

jQueryを使用して、ユーザーが実行できるアクションのさまざまなページをロードするメインのPHPページがあります。

メインページ

これは、ユーザーがすべてを行う場所です。オレンジ色の要素をクリックすると、jQuery スクリプトが実行されます<p>

「Solicitar Software」をクリックすると、jQuery が「solicitudes.php」を読み込みます。この php ページには独自のスクリプトがあります。

ここに画像の説明を入力

「solicitudes.php」ページが読み込まれると、その PHP スクリプトが実行されます。

require('conexion.php');
$conexion = new connection();

$query = "SELECT * FROM Carreras";
$resultado = mysql_query($query, $conexion -> conn) or die('ERROR:' .$query);

?>

<select>スクリプトは、データベース内のすべてのキャリアをロードし、ご覧のとおりに追加します。

ここに画像の説明を入力

問題はここにあります。キャリアをクリックすると、キャリアに関連するリストの主題が読み込まれません。しかし、PHP ファイルだけにアクセスすると、うまく動作します。

ここに画像の説明を入力

jQueryコードは次のとおりです。

$(document).ready(function() {
    $("#carrera").change( //Select a carrer
        function()
        {
                var carreraId = $('#carrera option:selected').val();
                var queryMaterias = "carreraid=" + carreraId + "&valor=" + $("#valor").val();

                jQuery.ajax({
                  url: 'acciones.php',
                  type: 'GET',
                  dataType: 'text',
                  data: queryMaterias,
                  success: function(data) 
                  {
                    $("#lmateria").empty();
                    $("#lmateria").append(data); //Add subjects to the <select>
                    // $("#lmateria").html(data);
                  },
                  error: function(xhr, textStatus, errorThrown) {
                    //called when there is an error
                    alert(errorThrown);
                  }, 
                });

        }
);
});

私は何か間違ったことをしていますか?何が問題なのですか?助けてくれてありがとう。

メインページ:

<html>
        <head>
        <meta charset="utf-8">
        <title>Sistema de Administración</title>
        <link rel="stylesheet" type="text/css" href="//necolas.github.com/normalize.css/2.1.0/normalize.css">
        <link rel="stylesheet" type="text/css" href="css/administrador.css">
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
        <script type="text/javascript" src="scripts/administrador.js"></script> 

    </head>
    <body>

    <div id="acciones">
        <p id="logo">
            <img src="images/logo1.jpg" alt="logo">
        </p>
        <p id="division">Agregar Division</p>
        <p id="carrera">Agregar Carrera</p>
        <p id="materia">Agregar Materia</p>
        <p id="software">Agregar Software</p>
        <p id="profesor">Agregar Profesor</p>
        <p id="ssoftware">Solicitar Software</p>
        <p id="solicitudes">Lista de Solicitudes</p>
        <center><input type="button" id="logout" value="Salir" onclick="window.location.href='acciones.php?valor=5'"></center>
    </div>
    <div id="resultado">

    </div>

</body>
</html>

jQuery は「solicitud.php」をロードします<div> resultado

Solicitud.php:

<!doctype html>

<?php  

require('conexion.php');
$conexion = new connection();

$query = "SELECT * FROM Carreras";
$resultado = mysql_query($query, $conexion -> conn) or die('ERROR:' .$query);

?>

<html>
<head>
    <meta charset="UTF-8">
    <link rel="stylesheet" type="text/css" href="css/solicitud.css">
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    <script type="text/javascript" src="scripts/solicitud.js"></script> 

</head>

<body>
    <header>
        <h2>Solicitud de Software</h2>
    </header>
    <form action="acciones.php" id="solicitud" method = "GET">
        <select name="carrera" id="carrera">
            <option value="">Seleccione una carrera</option>
            <?php 
                while ($datos = mysql_fetch_assoc($resultado)) #MUESTRA LOS ROLES
                            { 
            ?>
                <option value="<?php echo $datos['id'];?>"><?php echo utf8_encode($datos['Carrera']);?></option>
            <?php 
                            }
            ?>
        </select>

        <select name="materias" id="lmateria">
            <option value="">Potato</option>
        </select>

        <!-- <input type="text" placeholder="Nombre" id="nombre" name="nombre">
        <input type="text" placeholder="Codigo" id="codigo" name="codigo">
        <input type="button" value="Agregar" id="enviar"> -->
        <input type="hidden" id="valor" name="valor" value='17'>
    </form>
    <h3 id="exito">Agregado!</h3>
</body>
</html>
4

3 に答える 3