Проблемы с $ _GET

У меня есть этот код и стоимость в url, который позвонил с функцией: $ _GET (так называемый храбрый вождь = (Число)) я trancado и не могу способствовать тому, чтобы была выполнена консультация, которую я делаю с json, единственная форма, которая функционирует, - добавляя число вручную, но мне нужно, чтобы он это взял из браузера.

в этой консультации:

$query = mysqli_query($con, "SELECT * FROM calendar where customers_id = '11'"); 

номер 11 должен быть взятым из url с функцией $ _GET я разместил следующий код и таблица исчезает, не читает url и возвращает мне стоимость нуля:

Я попытался с:

$query = mysqli_query($con, "SELECT * FROM calendar where customers_id = '$_GET['cID']'");

и с:

$query = mysqli_query($con, "SELECT * FROM calendar where customers_id = '.$_GET['cID'].'");

и с:

$query = mysqli_query($con, "SELECT * FROM calendar where customers_id = '.$HTTP_GET_VARS['cID'].'");

и оно не функционирует

это первоначальный унифицированный указатель ресурса переменная - &cID = (Стоимость) и стоимость &cID = (Стоимость) - тот, в котором я нуждаюсь для генерала Query:

http://localhost/manager/adminx1/calendario_customers.php?page=1&cID=11&action=edit

здесь я оставляю им полный код, но оно не функционирует, они могли бы помогать мне с этим:

if($type == 'fetch')
{
  $action = (isset($_GET['action']) ? $_GET['action'] : '');
  $events = array();

  $query = mysqli_query($con, "SELECT * FROM calendar where customers_id = '$_GET['cID']'");

  while($fetch = mysqli_fetch_array($query,MYSQLI_ASSOC))
  {
    $e = array();
    $e['id'] = $fetch['id'];
    $e['title'] = $fetch['title'];
    $e['start'] = $fetch['startdate'];
    $e['end'] = $fetch['enddate'];
    $e['customers_id'] = $_GET['cID'];


    array_push($events, $e);
  }
  echo json_encode($events);
}

2
задан 15.06.2016, 19:05
4 ответа

Первое всего, если что-то ты не функционирует, проверяет перед тем, как делать изменения, если в тебя бросает какой-то тип результата переменные, что ты надеешься, что это у них есть, и если он это бросает, что произошедшее.

var_dump($_GET['cID']);

Он был бы должен давать тебе вывод в браузере, сходном с этим:

string '11' (length=1)

Поскольку ты сможешь подтверждать, несмотря на то, что это число, оно это представляет как string.

Если ты хочешь конвертировать это в integer, будь достаточен поместить перед переменной (int).

var_dump((int)$_GET['cID']);

В этом случае он дал бы вывод в браузере как эта:

int 1

Если все в порядке, и мы получаем данные правильно пора перемещать параметры в консультацию.

Использовав двойные кавычки " для консультации, не является необходимой убегать ни entrecomillando переменная. Ты можешь перемещать его прямо переменную.

Так как то, что ты ждешь в числе как идентификаторе, консультацию допустит, это будет один string или один integer. Но как хорошая практика, если ты ждешь целое число, идеальное состояло бы в том, чтобы перемещать его целое число в консультацию.

// he puesto 0 como alternativa pero puedes poner lo que necesites
$id = (isset($_GET['cID'])) ? (int)$_GET['cID'] : 0;
$query = mysqli_query($con, "SELECT * FROM calendar where customers_id = $id");

Если пытаясь со статической стоимостью он дает тебе результаты, ясно, что это не проблема консультации на первый взгляд. С var_dump() предыдущие ты сможешь подтверждать, прибывают ли параметры к тебе с url, и что параметры - те, которых ты получаешь действительно.


Я добавляю

На коде, который ты поместил после, проверь эту линию:

$strSQL = mysqli_query($con, "SELECT * FROM calendar where customers_id =" . $_GET['cID'];

Ему остается закрывать функцию mysqli_query.

$strSQL = mysqli_query($con, "SELECT * FROM calendar where customers_id =" . $_GET['cID']);

ИЗДАННЫЙ 2-ОЙ

Ты можешь пытаться видеть все добавленные параметры, которые приносит url:

var_dump($_GET);

С url комментария, он был бы должен давать тебе такой вывод:

array (size=3)
  'page' => string '1' (length=1)
  'cID' => string '11' (length=2)
  'action' => string 'edit' (length=4)
1
ответ дан 24.11.2019, 14:08
  • 1
    благодарный, я разместил твою рекомендацию и стоимость дает мне нуль, меня показывает храбрый вождь, который они содержат стоимость нуля совершенно сейчас, как я делаю для того, чтобы он прочитал мне стоимость (int) $ _GET [и #39; храбрый вождь и # 39;] вместо нуля???? это стоимость, которая у меня есть в соединении: localhost / менеджер / adminx1 / и hellip; в этом случае я хочу, чтобы он только явился теми, которые являются стоимостью 11, которыми брусок такого get это имеет, – Ivan Diaz Perez 15.06.2016, 20:01
  • 2
    Именно Оскар $id = (isset ($ _GET [и #39; храбрый вождь и # 39;]))? (int) $ _GET [и #39; храбрый вождь и # 39;]: 11; номер 11, который написан в руку, хотел бы, чтобы был тот (int) $ _GET [и #39; храбрый вождь и # 39;] я это разместил и скрывается консультация, оставляет в мишени экран – Ivan Diaz Perez 15.06.2016, 20:03
  • 3
    Попытайся с нею и #250; ltima edici и # 243; n, который я поместил. Он дополнительный и # 241; или что GET не подобрал тебе правильно данных url. и #191; Смоги быть sobreescribiendo где-то рукописного шрифта перед тем, как прибывать ах и # 237;? – OscarR 15.06.2016, 20:08
  • 4
    Но в рукописном шрифте, который ты поместил, изменчивая $ _GET появляется в нескольких случаях. Если это та, которая приносит стоимость, и он не прибывает к тебе правильно, tendr и # 225; s, что идти в рукописный шрифт, который это подбирает, и оценивать это all и # 237;. И с этого рукописного шрифта, видеть, из-за которого не ты это env и # 237; в правильно. – OscarR 15.06.2016, 20:25

протестируй это

$strSQL="SELECT * FROM calendar where customers_id =".$_GET['cID'];
 $query = mysqli_query($con,$strSQL);
2
ответ дан 24.11.2019, 14:08

Продолжая выставленное в этом вопросе SO на английском:

$_GET это не функция а array, из-за которого, чтобы соглашаться:

<?php
echo $_GET['cID']; //Sustituye por el QueryString deseado.
1
ответ дан 24.11.2019, 14:08

Ты не убегаешь символы в твоем query.

$query = mysqli_query($con, "SELECT * FROM calendar where customers_id = '".$_GET['cID']."'");
1
ответ дан 24.11.2019, 14:08
  • 1
    Изменчивые номера и # 233; богатым не нуждается в том, чтобы быть бегство. Кавычки в этом случае не необходимы. –  15.06.2016, 23:33
  • 2
    Костлявая, что в PHP делать: = 'Костлявая, что в PHP делать: = [110] и #191; он v и # 225; lido? и #191; Использовать ap и # 243; strofes внутри ap и # 243; strofes он правилен?GET['cID']' и #191; он v и # 225; lido? и #191; Использовать ap и # 243; strofes внутри ap и # 243; strofes он правилен? – gugadev 15.06.2016, 23:40
  • 3
    Я верю в то, что не entend и # 237; хорошо твой ответ. Смотри ответ @JorgeMarquez. –  15.06.2016, 23:41
  • 4
    Ах стой, ты имеешь в виду ap и # 243; strofes вне $ _GET. S и # 237; у тебя есть raz и # 243; n, даже я верю podr и # 237; чтобы сделать туз и # 237;: " ... Ах стой, ты имеешь в виду ap и # 243; strofes вне $ _GET. S и # 237; у тебя есть raz и # 243; n, даже я верю podr и # 237; чтобы сделать туз и # 237;: [110] из-за interpolaci и # 243; n strings xD. Damn it, давно не коснулся PHP.GET['cID']" из-за interpolaci и # 243; n strings xD. Damn it, давно не коснулся PHP. – gugadev 15.06.2016, 23:44