Preluare valori din checkbox in PHP

Ai o întrebare legată de PHP? Incercăm să îi găsim soluţie. Sau poate doar vrei să publici un cod interesant.

Moderatori: Zamolxe, Moderatori

Capriciu
PHPRomania Supporter
Mesaje: 9
Membru din: Sâm Sep 17, 2011 3:35 pm

Preluare valori din checkbox in PHP

Mesajde Capriciu » Sâm Dec 14, 2013 3:43 pm

Am urmatorul formular:

Cod: Selectaţi tot

<form action="test.php" method="POST">
<input type="checkbox" name="bifeaza[]" value="nume">Nume<br>
<input type="checkbox" name="bifeaza[]" value="prenume">Prenume<br>
<input type="checkbox" name="bifeaza[]" value="cnp">CNP<br>
<input type="checkbox" name="bifeaza[]" value="adresa">Adresa<br>
<input type="submit" name="submit" value="Genereaza">
</form>


In functie de ce criterii bifez in checkbox, doresc sa afisez rezultatele din baza de date.
Daca bifez nume, prenume sa primesc toate inregistrarile de pe coloanele nume, prenume.
Am incercat asa, dar din pacate nu prea imi iasa SELECT-ul:

Cod: Selectaţi tot

<?php
include 'settings.php';   //conexiune la baza de date
if($_POST)
{
$matrice = $_POST['bifeaza'];

for($i=0; $i < count($matrice); $i++){
    echo "Selected " . $matrice[$i] . "<br/>";

$cerereSQL = "SELECT `$matrice[$i]` FROM `$table2`";
$rezultat = mysql_query($cerereSQL);

}
    if(mysql_num_rows($rezultat) > 0) {

  $tabel_html = '<table border="1" height="400">';

  while($rand = mysql_fetch_array($rezultat)) {
    $tabel_html .= '<tr><td>' .$rand['nume']. '</td><td>'
                        .$rand['prenume']. '</td><td>'
                           .$rand['cnp']. '</td><td>'
                           .$rand['adresa']. '</td></tr>';
                        
  }
  $tabel_html .= '</table>';
}
}

echo $tabel_html;

?>


Oricate campuri as bifa, primesc doar o sinngura coloana.



Avatar utilizator
Birkoff
Senior Member
Mesaje: 6380
Membru din: Joi Mar 18, 2004 2:34 pm
Localitate: Bucuresti
Contact:

Re: Preluare valori din checkbox in PHP

Mesajde Birkoff » Sâm Dec 14, 2013 4:42 pm

http://phpfiddle.org/lite/code/g0z-2id

ti-am pus acolo un test, sus in fereastra aia ai butonul run, dai run si apoi bifeaza ce vrei in checkbox si dai submit sa vezi ce preia... daca nu te descurci mai intrebi
1) CMS, ERP, CRM, etc... (doar pentru clienti))
2) Portofoliu, servicii, contact, blog
3) Folositi aceasta clasa sql in proiectele voastre (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.

Capriciu
PHPRomania Supporter
Mesaje: 9
Membru din: Sâm Sep 17, 2011 3:35 pm

Re: Preluare valori din checkbox in PHP

Mesajde Capriciu » Sâm Dec 14, 2013 5:02 pm

Problema cred ca e in SELECT

Cod: Selectaţi tot

$cerereSQL = "SELECT `$matrice[$i]` FROM `$table2`";


Vreau sa selectez toate campurile bifate.

Avatar utilizator
Birkoff
Senior Member
Mesaje: 6380
Membru din: Joi Mar 18, 2004 2:34 pm
Localitate: Bucuresti
Contact:

Re: Preluare valori din checkbox in PHP

Mesajde Birkoff » Sâm Dec 14, 2013 5:15 pm

nu, problema e la algoritmul tau... cum preiei datele daca nu sa bifat nimic? cum compui selectul cand sunt mai multe bifate?
ti-am dat un exemplu ca sa vezi cum iti vin datele... dai si tu echo la select sa vezi cum se compune si poate iti dai seama de eroarea pe care o ai in cod... nu stau sa iti scriu eu cod pentru tine, dar iti arat erorile...

1) preia datele
2) verifica daca sa bifat ceva si compune selectul doar cu ce sa bifat (tine cont ca se pot bifa mai multe casute in acelasi timp)
3) ruleaza query si verifica daca nu a dat eroare
4) verifica daca query a returnat un rezultat si abia apoi preia rezultatele returnate

tu nu ai facut nimic din algoritmul de mai sus, incerci sa bagi un array intr-un select sql si normal ca iti da eroare la interogare.
1) CMS, ERP, CRM, etc... (doar pentru clienti))
2) Portofoliu, servicii, contact, blog
3) Folositi aceasta clasa sql in proiectele voastre (open source)
4) Vrei un magazin virtual la cheie, usor de folosit, cu api-uri incluse pentru maximizarea vanzarilor si multe alte facilitati? Da un semn si discutam.


Înapoi la “Cod PHP”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 43 vizitatori