Автор Тема: $_GET И $_POST при заявка  (Прочетена 823 пъти)

0 Потребители и 1 Гост преглежда(т) тази тема.

Knoppix

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 3
  • -Получени: 0
  • Публикации: 67
$_GET И $_POST при заявка
« -: 17 Юли 2013, 12:00:53 »
Здравейте, използвам този плугин

http://www.jeasyui.com/demo/main/index.php?plugin=Application&theme=default&dir=ltr&pitem=

Идеята е обаче че искам да взимам датата от таблицата динамично свързано с уеб адреса, обаче като подам в get_user.php
Променлива например $user = $_GET['user'] нещата не ми сработват някой може ли да ми помогне да се преборя с този проблем


HanKrum

  • Hero Member
  • *****
  • Благодарности
  • -Казани: 120
  • -Получени: 73
  • Публикации: 994
  • Кибик
Re: $_GET И $_POST при заявка
« Отговор #1 -: 17 Юли 2013, 19:05:13 »
Отивам да купя боб да хвърлим, да видим що става така!

Научете се да питате като давате и код.
 ;D
"Силата на правителството се крепи на невежеството на народа, и те знаят това и винаги ще се борят против просвещението." Лев Толстой

Knoppix

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 3
  • -Получени: 0
  • Публикации: 67
Re: $_GET И $_POST при заявка
« Отговор #2 -: 18 Юли 2013, 16:39:15 »
 ;D
Грешка ето за какво става въпрос

това ми е хтмл-а
<table id="dg" title="Дадени пари на шофьорите" style="width:998px;height:360px"
toolbar="#toolbar" pagination="true" idField="id"
rownumbers="true" fitColumns="true" singleSelect="true">
<thead>
<tr>
<th field="date" width="50" editor="{type:'validatebox',options:{required:true}}">Дата</th>
<th field="driver" width="50" editor="{type:'validatebox',options:{required:true}}">Шофьор</th>
<th field="vlekach_number" width="50" editor="text">Влекач</th>
<th field="sum" width="50" editor="{type:'validatebox',options:{required:true}}">Сума</th>
<th field="osnovanie" width="50" editor="{type:'validatebox',options:{required:true}}">Основание</th>
<th field="zabelejka" width="50" editor="{type:'validatebox',options:{required:true}}">Забележка</th>
<th field="status" width="50" editor="{type:'validatebox',options:{required:true}}">Статус</th>
</tr>
</thead>
</table>
<div id="toolbar">
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="javascript:$('#dg').edatagrid('addRow')">Нов</a>
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="javascript:$('#dg').edatagrid('destroyRow')">Изтрии</a>
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-save" plain="true" onclick="javascript:$('#dg').edatagrid('saveRow')">Запази</a>
<a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-undo" plain="true" onclick="javascript:$('#dg').edatagrid('cancelRow')">Откажи</a>
</div>
В този код реално извеждам резултатите от таблицата в базата данни
Така това е кодът с който извиквам резултатите
<?php
$driver 
$_GET['shofior'];
include 
'../config/connect-db-money.php';
mysql_query("SET CHARACTER SET utf8");
$rs mysql_query('select * from given_money WHERE driver="$driver"');
$result = array();
while(
$row mysql_fetch_object($rs)){
array_push($result$row);
}

echo 
json_encode($result);

?>


Така и последно това е кода в индекс файла
//GET URL VARS
function getUrlVars() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
        vars[key] = value;
    });
    return vars;
}
//Edata GRID
 $(function(){
var driver = getUrlVars()["shofior"];
$('#dg').edatagrid({
url: 'get_money.php?driver='+driver,
saveUrl: 'save_money.php',
updateUrl: 'update_money.php',
destroyUrl: 'destroy_money.php'
});
});
Каква е идеята искам да взимам от урл-то което изглежда по следният начин
boss/?page=money&shofior=АЙДЪН АЙРЕДИН РАМАДАН
само shofior = .... и да го слагам в WHERE clause т.е при извеждането на резулатите да ми показва тези който отговарят само на клаузата ...

HD

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 208
  • -Получени: 165
  • Публикации: 3077
Re: $_GET И $_POST при заявка
« Отговор #3 -: 18 Юли 2013, 17:49:03 »
И защо е необходимо да го правиш по тоя начин? Това си е голям секюрити риск. Ползвай POST, след това го валидираш(trim, htmlspecialchars) и след това го плющиш  в заявката.

Knoppix

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 3
  • -Получени: 0
  • Публикации: 67
Re: $_GET И $_POST при заявка
« Отговор #4 -: 18 Юли 2013, 18:39:40 »
е как да взема от урл-то променливата за да я сложа в пост

4o4ity

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 4
  • -Получени: 3
  • Публикации: 78
Re: $_GET И $_POST при заявка
« Отговор #5 -: 18 Юли 2013, 19:23:51 »
е как да взема от урл-то променливата за да я сложа в пост

за кво ти е от урл-то?
т.е. аз не мога да разбера от къде го взимаш тва шофьор,но му слагаш едно name="shofior"  от където го взимаш името и след тва със $_POST['shofior'] взимаш данните които са от тва поле инпут или каквото там е

Knoppix

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 3
  • -Получени: 0
  • Публикации: 67
Re: $_GET И $_POST при заявка
« Отговор #6 -: 18 Юли 2013, 19:25:38 »
това шофьор идва от друга страница която подава урл към списък със шофьори които взимам от база данни

4o4ity

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 4
  • -Получени: 3
  • Публикации: 78
Re: $_GET И $_POST при заявка
« Отговор #7 -: 18 Юли 2013, 19:27:34 »
това шофьор идва от друга страница която подава урл към списък със шофьори които взимам от база данни

дай кода ако може :)

Knoppix

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 3
  • -Получени: 0
  • Публикации: 67
Re: $_GET И $_POST при заявка
« Отговор #8 -: 18 Юли 2013, 21:11:29 »
Това е кода от където идва shofior

<?php
$con
=mysqli_connect("localhost","db_user","db_pass","db_name");
// Check connection
if (mysqli_connect_errno())
  {
  echo 
"Грешка при свързването с базата данни: " mysqli_connect_error();
  }
  
$con->set_charset("utf8");
$result mysqli_query($con,"SELECT * FROM shofiori");
 
echo 
"<div style=\"padding:5px;border:1px solid #ddd\">";
while(
$row mysqli_fetch_array($result))
  {
  echo 
"<a href=\"?page=money&shofior=" .$row['ime'] ."\"  class=\"easyui-linkbutton\" data-options=\"plain:true\" style=\"width:290px;\">".$row['ime'] ."</a>";
  echo 
"<div class=\"menu-sep\" style=\"width:250px; float:left; margin-left:-35px;\"></div>";
  echo 
"<br>";
  }
  
echo 
"</div>";

mysqli_close($con);
?>


HanKrum

  • Hero Member
  • *****
  • Благодарности
  • -Казани: 120
  • -Получени: 73
  • Публикации: 994
  • Кибик
Re: $_GET И $_POST при заявка
« Отговор #9 -: 19 Юли 2013, 01:12:39 »
Значи, ти извеждаш "шофьорите", като линкове, и като се кликне го праща в URL-то.
Има куп други начини, например пак да си останат линкове но в  href да извикаш функция на JavaScript с която пращаш POST с името на "шофьора" или с AJAX или със submit.

п.п. Да давам ли примерен код?
"Силата на правителството се крепи на невежеството на народа, и те знаят това и винаги ще се борят против просвещението." Лев Толстой

Knoppix

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 3
  • -Получени: 0
  • Публикации: 67
Re: $_GET И $_POST при заявка
« Отговор #10 -: 19 Юли 2013, 09:04:43 »
ако може бих ти бил много благодарен

NoBBy

  • Sr. Member
  • ****
  • Благодарности
  • -Казани: 4
  • -Получени: 38
  • Публикации: 309
Re: $_GET И $_POST при заявка
« Отговор #11 -: 19 Юли 2013, 17:08:19 »
Няма логика да ползваш post, ако само извличаш данни, на get това му е работата

Като ти гледам заявката, търсиш проблема на грешното място, и с пост да пратиш проблема ще остане.
Зявката ти е в единични кавички и променливата $driver се приема буквално, вместо да се интерпретира като променлива

Също така като ти гледам примера верочтно ще искаш в гет параметъра да имаш имена с интервали. В такъв случай е добре да погледнеш:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURI
http://php.net/manual/en/function.rawurldecode.php