Checkbox ID naar URL

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Tom geen

Tom geen

06/11/2011 16:07:08
Quote Anchor link
Hallo,

Ik heb een lijst met checkboxes. En deze wil ik, indien aangevinkt, naar de URL sturen met een GET functie, maar ik weet niet echt waar ik mee moet beginnen.

Kan iemand mij op weg helpen?
(En ja, ik heb al op google gekeken. Maar ik kan nog niet echt code lezen dus het is voor mij dan best lastig om er iets bruikbaars van te maken. Het wordt gelukkig wel steeds beter ;)

Ik heb tot nu toe dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php

while ($rows = mysql_fetch_assoc($result)) {

    echo '<ul>';
    echo '<li>' .'<input type="checkbox" name="id" value="1"/>' . '<a href="RCwebsite-index.php?id=' . $rows[$pid] . '">Name: ' . $rows[$name] . '</a><br />'
    . 'Comment: ' . $rows[$comments] .  '</li>' ;
    echo '</ul>';

}


?>


Bvd, Tom
Gewijzigd op 06/11/2011 16:07:33 door Tom geen
 
PHP hulp

PHP hulp

20/11/2024 18:37:00
 
Nick van der heijden

nick van der heijden

06/11/2011 16:12:19
Quote Anchor link
waar maak je connection met je Database?
 
- Ariën  -
Beheerder

- Ariën -

06/11/2011 16:18:06
Quote Anchor link
method="GET" gebruiken in je <form>-tag/
 
Tom geen

Tom geen

06/11/2011 16:21:07
Quote Anchor link
Ik heb maar een stukje van mijn script gepost. Hierbij het hele script:

<link href="List.css" rel="stylesheet" type="text/css" />

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php

require_once"query_foutafhandeling.php";
require_once"database_connect.php";

//----------------------------------------------------------------------------

//-----Query to select items from MySQL database------------------------------

$sql = "SELECT * FROM producten ORDER BY id ASC LIMIT 1,6";
$result = mysql_query($sql);
if ($result == false) {
    echo showSQLError($sql,mysql_error(),'Fout met database.');
}


//-----Variables witch are linked to the MySQL databade fields----------------
$pid= "ID";
$name = "Product_title";
$comments = "Product_info";
$checkbox = "checkbox";


//-----While loop witch execute the query-------------------------------------
while ($rows = mysql_fetch_assoc($result)) {

    echo '<ul>';
    echo '<li>' .'<input type="checkbox" name="id" value=="on"/>' . '<a href="RCwebsite-index.php?id=' . $rows[$pid] . '">Name: ' . $rows[$name] . '</a><br />'
    . 'Comment: ' . $rows[$comments] .  '</li>' ;
    echo '</ul>';

}


?>


Toevoeging op 06/11/2011 16:25:35:

- Aar - op 06/11/2011 16:18:06:
method="GET" gebruiken in je <form>-tag/


Klinkt misschien raar, maar zou je iets meer info kunnen vertellen. Want hier begrijp ik nog niet zoveel van.
 
- Ariën  -
Beheerder

- Ariën -

06/11/2011 16:26:23
Quote Anchor link
Je hebt een checkbox-input, en dus een formulier, en ik neem ook aan dat je een <form> tag hebt?
Gewijzigd op 06/11/2011 16:26:39 door - Ariën -
 
Tom geen

Tom geen

06/11/2011 16:30:10
Quote Anchor link
Nee. Ik heb in een ander bestand een <div> tag waar ik require_once "dit script.php"

Moet ik een <form> hebben dan?
 
- Ariën  -
Beheerder

- Ariën -

06/11/2011 16:31:18
Quote Anchor link
je hebt toch een formulier, dus lijkt een <form> te me wel erg handig.
 
Eddy B

Eddy B

06/11/2011 16:34:21
Quote Anchor link
Formulieren zet je altijd tussen de <form> tag's, anders kan je browser de gegevens niet versturen.

Je opening tag: <form> heeft ook een aantal parameters nodig, namelijk een action en een method. Dus een standaard <form> tag ziet er zo uit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<form action="processor.php" method="get">
...je formulieren...
</form>
 
Tom geen

Tom geen

06/11/2011 16:36:06
Quote Anchor link
Oké, klinkt inderdaad ook wel logisch. maar als ik dan die <div> tag verander in een <form> tag (neem aan dat dat gewoon gewijzigd kan worden). Dan zet ik in die <form> tag:

require_once "dit script.php"

en dan daaronder:

method="GET"

Maar dan weet die method toch nog steeds niet wat hij moet doen?
 

06/11/2011 16:39:52
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
    // Database connectie:
    $Conn = mysqli_connect(MYSQLI_SERVER, MYSQLI_USERNAME, MYSQLI_PASSWORD, MYSQLI_DATABASENAME) or trigger_error('Er kon geen database connectie gemaakt worden. Probeer het later nog eens opnieuw.');
    
    // Selecteer alles uit de database:
    $SQL    = mysqli_query($Conn, "SELECT ID,Product_title,Product_info FROM producten ORDER BY id ASC LIMIT 1,6") or trigger_error('De producten konden niet geselecteerd worden door een error.');
    // Sluit de connectie:
    mysqli_close($Conn);
    
    // Kijken of er wel berichten zijn:
    if(mysqli_num_rows($SQL) > 0) {
    
        // Eerst form tags openen, anders kunnen we hier niets mee:
        echo '<form method="GET">';     // Je kunt eventueel nog action toevoegen om de gebruiker naar ergens anders te sturen
    
        // Nu gaan we alles tonen op de site:

        while($Row = mysqli_fetch_assoc($SQL)) {
        
            // Echo alles in een lijst:
            echo '
            <ul>
                <li><input type="checkbox" name="id" value="on" /><a href="RCwebsite-index.php?id='
.$Row['ID'].'">Naam: '.$Row['Product_title'].'</a><br />
                Commentaar: '
.$Row['Product_info'].'</li>
            </ul>'
; }

        // Het formulier moet nog gesloten worden:
        echo '</form>'; }
            
    // Als er geen berichten zijn:
    else {
        echo 'Er bevinden zich geen producten in de database.'; }
?>

Niet getest :p. Want 'k heb geen zin om een database aan te maken :p
Gewijzigd op 06/11/2011 16:43:35 door
 
Eddy B

Eddy B

06/11/2011 16:40:48
Quote Anchor link
In je <form> tag kan je geen require_once neerzetten, de require_once zet je bijvoorbeeld onderin je pagina. Je laat het <form> dan sturen naar je eigen pagina met een <input type="hidden" name="uitvoeren" />. Dan laat je het PHP script nakijken of er een veld is verstuurt met de naam "uitvoeren", zo ja: dan voer je het PHP script uit.
 
Tom geen

Tom geen

06/11/2011 16:58:49
Quote Anchor link
@ Aaron
Hij laat nu de lijst zien zoals ik hem al had, dus dat werkt goed. Maar hij stuurt nog niks naar de URL als ik het aanvink?

@Eddy
Ik heb nu een pagina met in een <div>tag:

<form action="processor.php" method="get">
...je formulieren...
</form>

Waarin ik action="processor.php" verander in action="dit_script.php"
En wat moet ik dan neerzetten in: ...je formulieren...?
Want mijn formulier wordt uit mijn SQL gehaald met "dit_script.php"
Gewijzigd op 06/11/2011 16:59:52 door Tom geen
 
- Ariën  -
Beheerder

- Ariën -

06/11/2011 17:07:02
Quote Anchor link
Je formulier die opgebouwd wordt?

Verdiep je anders eerst eens in HTML....
 
Tom geen

Tom geen

06/11/2011 17:12:14
Quote Anchor link
Je bedoeld mijn checkboxes en product omschrijvingen e.d.

Want die haal ik uit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
while ($rows = mysql_fetch_assoc($result)) {

    echo '<ul>';
    echo '<li>' .'<input type="checkbox" name="id" value=="on"/>' . '<a href="RCwebsite-index.php?id=' . $rows[$pid] . '">Name: ' . $rows[$name] . '</a><br />'
    . 'Comment: ' . $rows[$comments] .  '</li>' ;
    echo '</ul>';

}


?>


Ik heb dus geen vastwaardes en vast aantal checkboxes, deze komen uit mijn db.
Het is geen contact formulier o.i.d. maar meer een keuze menu waarin je product groepen kan kiezen.
 
Eddy B

Eddy B

06/11/2011 17:18:03
Quote Anchor link
In het script dat je hebt worden de formulieren geprint op het scherm, dus probeer die eens tussen de tag's te zetten, dan heb je een volledig werkend formulier.
 
- Ariën  -
Beheerder

- Ariën -

06/11/2011 17:18:43
Quote Anchor link
Maar het blijft een formulier.
 
Eddy B

Eddy B

06/11/2011 17:28:01
Quote Anchor link
@- Aar -: Natuurlijk moet het proces daarna nog worden ontwikkeld, maar het formulier werkt.
 
Tom geen

Tom geen

06/11/2011 17:28:22
Quote Anchor link
@Eddy

Bedoel je dan zo iets:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php
<div id="Productenlijst">
      <
form action="checkbox_to_url.php" method="get">
      [
code]<?php
    // Database connectie:
    $Conn = mysqli_connect("****", "****", "****", "****") or trigger_error('Er kon geen database connectie gemaakt worden. Probeer het later nog eens opnieuw.');
   //require_once"database_connect.php";
    
    // Selecteer alles uit de database:

    $SQL    = mysqli_query($Conn, "SELECT ID,Product_title,Product_info FROM producten ORDER BY id ASC LIMIT 1,6") or trigger_error('De producten konden niet geselecteerd worden door een error.');
    // Sluit de connectie:
    mysqli_close($Conn);
    
    // Kijken of er wel berichten zijn:
    if(mysqli_num_rows($SQL) > 0) {
    
        // Eerst form tags openen, anders kunnen we hier niets mee:
        echo '<form method="GET">';     // Je kunt eventueel nog action toevoegen om de gebruiker naar ergens anders te sturen
    
        // Nu gaan we alles tonen op de site:

        while($Row = mysqli_fetch_assoc($SQL)) {
        
            // Echo alles in een lijst:
            echo '
            <ul>
                <li><input type="checkbox" name="di" value="on" /><a href="RCwebsite-index.php?id='
.$Row['ID'].'">Naam: '.$Row['Product_title'].'</a><br />
                Commentaar: '
.$Row['Product_info'].'</li>
            </ul>'
; }

        // Het formulier moet nog gesloten worden:
        echo '</form>'; }
            
    // Als er geen berichten zijn:
    else {
        echo 'Er bevinden zich geen producten in de database.'; }
?>

      </form>
?>


Want dan krijg ik inderdaad wel een lijst, maar die had ik al een. Maar waar print hij dan de formulieren? want er gebeurd niet veel als ik een checkbox aan vink.
Gewijzigd op 06/11/2011 17:41:15 door Tom geen
 
- Ariën  -
Beheerder

- Ariën -

06/11/2011 17:30:21
Quote Anchor link
Zoals Eddy zegt, je hebt alleen nog maar een formulier, het daadwerkelijke proces dat er iets moet gaan gebeuren met het formulier moet nog ontwikkeld worden.

Als het goed is, zou het de data nu in ieder geval aan dezelfde pagina doorgeven d.m.v. GET. Dat is toch wat je wou?
 

06/11/2011 17:34:39
Quote Anchor link
Misschien met Ajax iets als je erop klik (aanvinkt) dat het script aangeroepen wordt. Of je kunt onderaan een <input name="zoeken" value="Zoeken" /> invoegen en dan door middel van een script alles uitrekenen, tonen of wat je ermee wilt doen!
Gewijzigd op 06/11/2011 17:45:09 door
 
Tom geen

Tom geen

06/11/2011 17:40:30
Quote Anchor link
Dus als ik het dan goed begrijp, dan kan ik ook mijn originele code gebruiken met daarvoor:

<form method="get">

en daar achter:

</form>

Dan krijg ik dus:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
<form method="get">

[
code]<?php

require_once"query_foutafhandeling.php";
require_once"database_connect.php";

//----------------------------------------------------------------------------

//-----Query to select items from MySQL database------------------------------

$sql = "SELECT * FROM producten ORDER BY id ASC LIMIT 1,6";
$result = mysql_query($sql);
if ($result == false) {
    echo showSQLError($sql,mysql_error(),'Fout met database.');
}


//-----Variables witch are linked to the MySQL databade fields----------------
$pid= "ID";
$name = "Product_title";
$comments = "Product_info";
$checkbox = "checkbox";


//-----While loop witch execute the query-------------------------------------
while ($rows = mysql_fetch_assoc($result)) {

    echo '<ul>';
    echo '<li>' .'<input type="checkbox" name="id" value=="on"/>' . '<a href="RCwebsite-index.php?id=' . $rows[$pid] . '">Name: ' . $rows[$name] . '</a><br />'
    . 'Comment: ' . $rows[$comments] .  '</li>' ;
    echo '</ul>';

}



?>

</form>

?>


Met deze toevoeging heb ik dus een formulier en dus ook de mogelijkheid om info te verzenden naar de URL (wat zonden <form> tag's niet zou kunnen).
En moet ik nu dus nog een submit button toevoegen de een script uitvoerd om de info aan de URL toevoegd?

Klopt dit? of zit ik nog steeds verkeerd te denken?
Gewijzigd op 06/11/2011 17:43:11 door Tom geen
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.