Pregunta

así que aquí va mi primera codificación real pregunta alguna vez en la web debido a que, normalmente trato de encontrar cosas fuera de mí mismo, pero a su tiempo, estoy muy atascado.

A ver lo que tengo hasta ahora: consulte esta página web


Lo que quiero lograr:

La empresa para la que trabajo en el momento en que me quiere crear un "asistente", que soluciona un problema relacionado con el WiFi, por la selección de su situación, y la expansión en eso.En la final, que debe ser implementado en un sitio web potenciado por Joomla, así que me imaginé el camino a seguir era, cargar todo en una sola página.


Cómo me estoy acercando a ti

Fui por primera vez a buscar una manera para cargar otras páginas en una sola página.He logrado esto mediante el uso de JavaScript (Se encuentran en este sitio web)

Después pensando que fuera, empecé a crear mi "seguimiento" de las páginas, y todo iba bien hasta que llegué a una página que filtro es el contenido agarrando el Parámetro de URL.

Para las personas interesadas en la descripción de la función de ver [esta página][3]


¿Cuál es el problema

Puedo usar un If Else bucle, para filtrar las opciones posibles, y si ninguno de estos se encuentran, la página debería darme la siguiente "Het zeit er naar uit dat er manual de cuatro es gegaan" o en inglés, "parece Que algo salió mal".Dado que este es el mensaje que recibo, algo que de hecho empezó a ir mal.Y después de mirar a través de mi código, una y otra vez, pensé que podría ser debido a que el parámetro de URL que no se agarre.

He pensado en ir de una página estática enlace (Solo link el botón a una página única), pero hice algunos cálculos, y para que funcione, yo tendría alrededor de 70 páginas, que se siente como una basura.


El Código

Este es mi código hasta el momento:

Mi página principal

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>EnGenius WiFi Wizard</title>
    <link href="css/style.css" rel="stylesheet" type="text/css" />
    <script language="javascript" type="text/javascript" src="js/jquery.js"></script>
    <script language="javascript" type="text/javascript" src="js/script.js"></script>

    </head>

    <body>
    <script type="text/javascript">
    function loadContent(elementSelector, sourceUrl) {
    $(""+elementSelector+"").load(""+sourceUrl+"");
    }
    </script>
<div id="content">
  <h1>De WiFi Wizard</h1>
    <h3>Snel en gemakkelijk een draadloze oplossing</h3>

  <div id="btnholder" style="margin-top:15px;">
            <a href="javascript:loadContent('#content', 'speed.php');"><div         id="button">Mijn internet is te langzaam</div></a>
            <a href="javascript:loadContent('#content', 'router.php');"><img         src="images/tip.png" style="float:left; margin-left:3px;" alt="WiFi tip" width="15"         height="15" onmouseover="tooltip.show('Internet snelheid word ook wel aangeduid met het         woord Bandbreete', 250);"
    onmouseout="tooltip.hide();" />
            <div id="button" style="margin-left:10px;">Ik heb een router nodig,         Maar weet niet welke</div></a><img src="images/tip.png" style="float:left; margin-        left:3px;" alt="WiFi tip" width="15" height="15" onmouseover="tooltip.show('Een router is         een apparaat wat een netwerk met het internet verbind', 250);"
    onmouseout="tooltip.hide();" />
  </div> 
    <h3>Wat is Wifi eigenlijk?</h3><br />

    <h4>WiFi is een verzameling van standaarden voor draadloze netwerken.

    Wat houdt dit nou precies in?
    Heel makkelijk gezegd: Internetten zonder lastige lange kabels! 
    Je kunt bv met jouw laptop lekker op de bank zitten en genieten van internet.<br />        <br />

    Als je thuis een draadloos netwerk wilt dan heb je een product nodig waar dus de         standaard/naam ‘802.11’ op staat.<br />
    Helaas zijn we in Nederland een behoorlijk bepakt (woon)gebied. Hierdoor kun je         bijvoorbeeld storing hebben op jouw (technische) producten die je thuis gebruikt.<br /><br         />

    Ook met WiFi kunnen er situaties voorkomen waarbij je geen optimaal gebruik kunt         maken van de oplossingen die worden aangeboden.<br /><br />
    Via deze website kom je op de hoogte wat nou al die termen eigenlijk betekenen en
    welke oplossingen er zijn voor bepaalde situaties, kortom je wordt een echte WiFi         kenner!<br />
    <br />
    </h4>       
</div>

    </body>
    </html>

Mi segundo contenido de la página

               <h1>De WiFi Wizard</h1>
            <h3>Dus u heeft een probleem met de snelheid van uw internet? Dat gaan we oplossen!</h3>
            <h3 style="font-size:10pt; color:#666666;">Wat is de afstand tussen uw computer en uw router?</h3>

            <div id="btnholder" style="margin-top:15px;">
            <a href="javascript:loadContent('#content', 'detail.php?prob=010');"><div id="button">0-10 Meter</div></a>
            <a href="javascript:loadContent('#content', 'detail.php?prob=1030');"><div id="button" style="margin-left:10px;">10-30 Meter</div></a>
            <a href="javascript:loadContent('#content', 'detail.php?prob=30');"><div id="button" style="margin-top:10px; margin-left:90px;">Meer dan 30 Meter</div></a>
            </div> 
            <br />
            <h3>Waarom is afstand zo belangrijk?</h3>
            <br />

            <h4>Een WiFi signaal reist door de lucht, en kan worden verstoord door veel verschillende dingen zoals, muren, plafonds, andere apparaten, en andere WiFi signalen.</h4>
            <h4>Daarnaast verliest een signaal na verloop van tijd zelf ook sterkte, net als met geluid dat je over een grotere afstand steeds slechter hoort. </h4>
            <h4>Stel je voor dat je het signaal sterker kan maken, door een ander apparaat te gebruiken. Dat kan, omdat wij  altijd onderdelen van hoge kwaliteit gebruiken, kunnen wij ervoor zorgen dat uw WiFi signaal een beter bereik heeft, en u dus een snellere verbinding krijgt.<br />
            <br />
            </h4>       

Mi Parámetro de dirección URL de la Página

            <h1>De WiFi Wizard</h1>
            <?php   

            $prob = $_GET["prob"]; 

            if ($prob == 010)
            {
            echo "<h3 style='font-size:10pt; color:#666666;'>Nu we de aftand weten moeten we uitvinden hoeveel mensen er gebruik maken van het netwerk</h3>";
            } 

            if ($prob == 1030){ 

            echo "<h3 style='font-size:10pt; color:#666666;'>Nu we de aftand weten moeten we uitvinden hoeveel muren en/of plafonds er zich tussen de computer en de router bevindenk</h3>";
            }

            if ($prob == 30){ 

            echo "<h3 style='font-size:10pt; color:#666666;'>Nu we de aftand weten moeten we uitvinden hoeveel mensen er gebruik maken van het netwerk</h3>";
            }

            else{
            echo "<h3 style='font-size:10pt; color:#666666;'>Het ziet er naar uit dat er iets fout is gegaan</h3>";
            }                   



            ?>

            <div id="btnholder" style="margin-top:15px;">
            <?php   

            $prob = $_GET["prob"]; 

            if ($prob == 010)
            {
            echo "<a href='javascript:loadContent('#content', 'users.php?amnt=15');'><div id='button'>1-5 gebruikers</div></a>
            <a href='javascript:loadContent('#content', 'users.php?amnt=5');'><div id='button'>Meer dan 5 gebruikers</div></a>";
            } 

            if ($prob == 1030){ 

            echo "<a href='javascript:loadContent('#content', 'pen.php?amnt=none');'><div id='button'>Geen plafonds of muren</div></a>
            <a href='javascript:loadContent('#content', 'pen.php?amnt=1');'><div id='button'>1 Muur of Plafond</div></a>
            <a href='javascript:loadContent('#content', 'pen.php?amnt=2');'><div id='button'>2 Muren of Plafonds</div></a>
            <a href='javascript:loadContent('#content', 'pen.php?amnt=more');'><div id='button'>Meer dan 2 muren of plafonds</div></a>";
            }

            if ($prob == 30){ 

            echo "<a href='javascript:loadContent('#content', 'users.php?amnt=15');'><div id='button'>1-5 gebruikers</div></a>
            <a href='javascript:loadContent('#content', 'users.php?amnt=5');'><div id='button'>Meer dan 5 gebruikers</div></a>";
            }

            else{
            echo "-";
            }                   



            ?>

            </div> 
            <br />  
            <?php   

            $prob = $_GET["prob"]; 

            if ($prob == 010)
            {
            echo "<h3>Wat Maakt het aantal gebruikers uit?</h3>
            <br />

            <h4>Het aantal gebruikers bepaalt de hoeveelheid data die er word gebruikt binnen een netwerk. Hoe meer gebruikers er op een netwerk zitten, des te meer data word er gebruikt.<br />
            <br />Als het netwerk dit niet aankan, betekent het dat u een onstabiel, en traag netwerk krijgt, waardoor u niet optimaal van uw internet kunt genieten.</h4>";
            } 

            if ($prob == 1030){ 

            echo "<h3>Wat Maakt het aantal muren of plafonds uit?</h3>
            <br />

            <h4>Waneer een WiFi signaal door muren of plafonds heen reist, neemt het in sterkte af. Dus hoe meer obstakels er tussen uw router, en uw computer staan, des te zwakker het signaal.<br />
            <br />Door middel van de juiste onderdelen, denk bijvoorbeeld aan antenna's, kun je een sterker signaal creëren dat zich verder kan verspreiden.</h4>";
            }

            if ($prob == 30){ 

            echo "<h3>Wat Maakt het aantal gebruikers uit?</h3>
            <br />

            <h4>Het aantal gebruikers bepaalt de hoeveelheid data die er word gebruikt binnen een netwerk. Hoe meer gebruikers er op een netwerk zitten, des te meer data word er gebruikt.<br />
            <br />Als het netwerk dit niet aankan, betekent het dat u een onstabiel, en traag netwerk krijgt, waardoor u niet optimaal van uw internet kunt genieten.</h4>";
            }

            else{
            echo "-";
            }                   



            ?>

Lo siento si mi código es claro, tengo que acostumbrarme a todo el pegar los códigos en los sitios web, pero al menos lo he intentado.


Así que para el TL;DR gente entre nosotros.En Resumen:

Necesito el filtro de una página php con los parámetros de la url, pero parece Que no puede agarrar el parámetro, debido a que la URL no cambia directamente.

A ver lo que tengo hasta ahora: consulte esta página web

Gracias de antemano!

¿Fue útil?

Solución

Parece que el parámetro que se anexa a la petición AJAX es diferente que el parámetro que el código PHP está buscando.

Desde el asistente para la página de inicio, si hace clic en "Mi Internet es demasiado lento" (el primer botón traducido por el traductor de Google.) Si, a continuación, haga clic en cualquiera de los tres botones me sale el error de la página que usted describe.La dirección url que se solicita es /detail.php?id=010, pero su fragmento de código PHP, dice que el script está buscando un prob Parámetro GET.

Trate de ajustar el parámetro de ser enviado a prob o el parámetro que el script PHP está buscando para id.

Otros consejos

Usted debe poner comillas alrededor de los valores que usted está comparando contra.Por ejemplo, 010 sería interpretado como un octal.

if ($prob == '010') {
    ...
} else if ($prob == '1030') {
    ...
}

Y así sucesivamente.

editar:También, como se ha mencionado por Noé, no "prob" parámetro se pasa en la URL, solo el "id".Así que le asigne $prob = $_GET['id'].

Además de los puntos ya se destacó por Noé Freitas y Dan, Le recomendamos que utilice un PHP interruptor de para viajar a través de todos los valores posibles, su limpiador y la opción predeterminada le permite devolver un valor de error si no se encuentra nada.

También, comprobar que las variables con isset(), no asuma que su presencia, de lo contrario:

  • se toman demasiado tiempo para depurar el script;
  • no se dan cuenta de si algo es de ser aprobada;
  • puede obtener un aviso de php (Notice: Undefined variable, o Notice: Undefined index);
  • etc..

PHP EJEMPLO BASADO EN EL CÓDIGO

<?php   

// check if variable is present to use it or pass empty
$prob = (isset($_GET["id"])) ? ($_GET["id"]) : (''); 

// switch by all possible values
switch ($prob) {

  case "010":
    echo "bla bla bla";
    break;

  case "1030":
    echo "bla bla bla";
    break;

  case "30":
    echo "bla bla bla";
    break;

  default:
    // This case matches anything that wasn't matched by the other cases
    // output error, or something...
    echo "-";
    break;

}

?>

Relacionados con su secuencia de comandos, no es necesario el uso de tantas comillas dobles:

<script type="text/javascript">
function loadContent(elementSelector, sourceUrl) {
  $(elementSelector).load(sourceUrl);
}
</script>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top