de paso variable de javascript a php mysql consulta de selección

Estoy ejecutando mysql select de la consulta en php como este

<?php
  $getvalue="SELECT id,name from table1 WHERE column1='$var1' and column2='$var2'";
  $result=mysql_query($getvalue) or die(mysql_error());

  while($row=mysql_fetch_array($result)){
       extract($row);
       echo $name;
  }
?>

var1 y var2 son variables javascript en la misma página. Sé lado del cliente variable no se puede pasar para el lado del servidor. Pero, ¿hay alguna solución como las variables están en la misma página.

  • Variables JavaScript se puede pasar a PHP mediante AJAX, o mediante el uso de un formulario
  • más inyecciones de SQL esperando a suceder 🙂
InformationsquelleAutor nyxem1 | 2014-05-02

3 Kommentare

  1. 6

    Para hacer que esto suceda – creo – tiene el uso de AJAX.

    El código se verá así:

            $.ajax({
                url: 'your_script.php',
                type: 'POST',
                data: {var1: javascript_var_1, var2: javascript_var_2},
                success: function(data) {
                    console.log("success");
                }
            });

    PHP será similar a esta (sin mantener en mente el JSON codificar:

    <?php
    
    $var1 = $_POST['var1'];
    $var2 = $_POST['var2'];
    
      $getvalue="SELECT id,name from table1 WHERE column1='$var1' and column2='$var2'";
      $result=mysql_query($getvalue) or die(mysql_error());
    
      while($row=mysql_fetch_array($result)){
           extract($row);
           echo $name;
      }
    ?>

    Entonces usted puede JSON codificar los resultados y mucho más bonita de salida en el éxito. El script php – sin embargo – debe vivir en otro archivo php.

    También, escapar de sus datos. El uso de declaraciones preparadas.

    • yo sé acerca de la PDO y comunicado en la teoría. Tratando de mis manos en los fundamentos. Es lo anterior es válido en la misma página php.
    • lo intentó una vez más… lo hizo bien haciendo otra test.php la página de consulta y la instrucción sql allí. También he utilizado PDO.
  2. 1

    Que en teoría, se podría pasar las variables de php a través de algún tipo de llamada de ajax. Creo que sería algo como…

    JavaScript:

    var data = {
        'var1': $('selector').val(),
        'var2': $('selector').val()
    };
    
    $.ajax({
        type: 'post',
        url: 'path-to-your-file.php',
        data: data,
        timeout: 50000
    }).done(function(response) {
        console.log(response);
    }).fail(function(error) {
        //uh-oh.
    });

    php:

    <?php
    print_r($_POST['data']);

    De lo contrario, usted podría utilizar:

    • cookie
    • de entrada oculto

    php:

    <?php 
    ... column1='$_COOKIE["mycookie1"]' and column2='$_COOKIE["mycookie1"]'";
    ... column1='$_POST["hidden1"]' and column2='$_POST["hidden2"]'";

    NOTA: que se desea desinfectar los datos. El uso de galletas cruda y/o valores de entrada podría llevar a algunos menos de los resultados deseados.

  3. 0

    Utilizar el Método Post en el AJAX o el Formulario!! Para enviar js variable en Php y recibir en php usando $_post[ name_of_obj ];

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea