Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Não é possível encontrar um tipo de entrada =valor de imagem em $_POST


Basta usar var_dump() para ver o que está em $_POST :
var_dump($_POST);

E você verá que, quando seu formulário for enviado usando o <input type="image"> , você obtém:
array
  'buyuka_x' => string '0' (length=1)
  'buyuka_y' => string '0' (length=1)


Então, não existe $_POST['buyuka'] -- em vez disso, existem:
  • $_POST['buyuka_x']
  • e $_POST['buyuka_y']

O que significa que seu código deve ficar assim (não testando o inexistente buyuka entrada e teste para os dois _x e _y -- Suponho que testar para um desses deve ser suficiente) :
if(isset($_POST['buyuka_x'], $_POST['buyuka_y']))
{
    $sorgu='SELECT * FROM urunler ORDER BY uyeno DESC';
}




Editar após os comentários: Não faço ideia por que é assim -- mas tendo um .x e um .y é como é definido no padrão HTML.

Se você der uma olhada em Formulários em documentos HTML , e role um pouco para baixo, você poderá ler:

No PHP, os pontos nos nomes dos parâmetros são substituídos automaticamente por e unerscore.
Então:
  • name.x torna-se name_x
  • e name.y torna-se name_y

Como fonte para essa última declaração, você pode ler Variáveis ​​ De fontes externas - Formulários HTML (GET e POST) (citando) :