Санкционировать переменную с полем моего bd

Я разрабатываю Веб страницу, которая имеет пользователей по отношению к городам correspondietes, чтобы быть более точной, будь построена следующей формы (И она сделана в Постглинистом песчанике)

USER

┌────────────┬───────────┐
│ cv_usuario │ Password  │
├────────────┼───────────┤
│        011 │ Ciudad1   │
│        022 │ Ciudad2   │
└────────────┴───────────┘

И с другой стороны у меня есть таблица ГОРОДА

┌────────────┬───────────┬─────────────┐
│ cv_ciudad  │  nombre   │  Habitantes │
├────────────┼───────────┼─────────────┤
│ 011        │ Del Valle │      123823 │
│ 022        │ Madero    │      998337 │
└────────────┴───────────┴─────────────┘

Главным образом мой веб сайт нуждается в том, чтобы сделать следующее:

  • Login (который вводит информацию в компьютер с именем пользователя, соответствующим Вашему ключу города)
  • Когда он согласится, открой карту, которую я считаю собранной с api google, которым, у которого есть слои городов
  • Когда ты даешь ему в кнопке VER КАРТОЧКУ, он должен тебе загружать все данные, соответствующие этому городу (брось консультацию с данными корреспондент), НО, если ты даешь ему клик в различном городе, будь должен показывать сообщение: ¡No tiene permiso para acceder a los datos de esta ciudad!

Даже сейчас мне удалось согласиться, дав клик городу, с которым я имею доступ, но мне не смогло удаваться санкционировать с различным городом. Я работаю с php

Мой код php Login, где я строю мой valiable начала сеанса

session_start();
$_SESSION['varname'] = $userName;
echo "Welcome " . $userName;
header("Location: ../index.php"); //Me dirijo a index de mi página que contiene el mapa

В моей карте я показываю маленькую карточку со ссылкой, которая содержит xml, где я манипулирую прединформацией, чтобы руководить карточкой информации с Вашим основным корреспондентом

<campo predato="CIUDAD|http://127.0.0.1/CIUDADES/verficha.php?varname=">
  <nombre>clavegeo</nombre>
  <alias>Ficha</alias>
</campo>

и в моей карточке информации у меня есть следующее: Я повторно распределяю хранившееся в начале сеанса в другой переменной

$ciudad = $_SESSION['varname'];

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

if ($ciudad) {
    $query="Select *
            from ciudad
            where cv_ciudad
                in ($ciudad) )
                ;";

    $result = pg_query($query) or die('Query failed: ' . 
              pg_last_error());
    $rows = pg_num_rows ($result);
    $i = pg_num_fields($result);
}
else {
    echo "<br><center>¡No tiene permiso para acceder a los datos de esta ciudad!";
    echo $ciudad;
}

Однако, если я даю клик другому городу и даю ему в - показывать карточку - посылает мне верно консультацию этого города даже, который не соответствует с ключом, с которым я имею доступ в login :(

Я надеюсь, что могут помогать мне друзья, заранее спасибо

2
задан 16.08.2018, 17:28
2 ответа

докуда entendГ, - у пользователя, который инициализируется sesiГіn, есть pre распределенная город. который единственный дебет видения этой.

, если это случай, deberГ-схвати иметь

  1. ее по отношению к Пользователю
  2. id_ciudad распределенная захватывать id_ciudad_seleccionada.
  3. делать простой if

.

if(id_ciudad.equals(id_ciudad_seleccionada))
{
      //realizar llamada 
}
else
{
     //mandar mensaje.
}

или хороший, если ты хочешь сделать это с query.

единственный tendrГ-эксперт, что менять твой query

   Select * from CIUDADES 
    where cv_ciudad = (select cv_ciudad  from USER WHERE cv_usuario = '011 ' and password = 'Ciudad1' and  cv_usuario  = $ciudad)

Эта магия на

select cv_ciudad  from USER WHERE cv_usuario = '011 ' and password = 'Ciudad1' and  cv_usuario  = $ciudad

поисков пользователь 011 с password Ciudad1 и кроме того должно выполнять, что город был равен тому, которого заблаговременно схвати выбранный., если он существует, возвращает тебе город противоположный случай не harГЎ совсем не.

надеялся, что он твоей помощи.

0
ответ дан 24.11.2019, 01:26

Я думаю, что у тебя есть один pequeГ±o деталь в твоей логике, потому что, чтобы делать, что ты просишь первый tendrГ-туз, что, "прикрепить" пользователей с городами, ты можешь делать это ручным способом в твоем BD, или сделай один form, где ты смог, ты осматриваешь usuarios с Вашим соответствующим городом и в конце концов консультировать для это, так как ты можешь делать это с одним query крепя два, что я думаю, что он то mГЎs fГЎcil.

 $query= "SELECT c.cv_ciudad, c.nombres, c.habitantes, u.cv_usuario FROM  cv_ciudad c, cv_usuario u WHERE c.cv_ciudad=u.cv_ciudad";
0
ответ дан 24.11.2019, 01:26