checkbox uit $rows en UPDATE sql

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Erwin Roossien

Erwin Roossien

07/06/2011 18:48:01
Quote Anchor link
Hey mensen,

Ik zit helemaal vast met een checkbox functie waarmee ik de waarde in mijn sql kan updaten. Het lukt me niet om uit de `$row["zinNummer"]` die zich bevind in een tabel te posten op de verwerkpagina UpdateZin.php

Ik heb een aantal zinnen die in de database ingesteld zijn als `actief = "n"`
Met een backend pagina wil ik de zinnen die ingesteld zijn als `actief` = "n" veranderen naar de value "J" (in het veld: actief). Dit wil ik doen door een checkbox achter de getoonde zin te plaatsen. Ik ben mijn php boek al aan het doorspitten en heb niets kunnen vinden wat me zou kunnen helpen. Op het internet vind ik alleen simpele checkbox voorbeelden waar ik weinig aan heb.

Anyway hopelijk kan iemand zien wat er fout is...

admin pagina
-----------------------------------
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
<?php

    $sql
= "SELECT `zinNummer`, `datum`, `zinTekst`, `actief` FROM OPENINGSZIN WHERE `actief` = \"N\"  ORDER BY `datum` DESC";
    $resultSet = mysql_query($sql) or trigger_error(mysql_error());
    if (mysql_num_rows($resultSet) > 0)
    {

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

            $zinNummer = $rows["zinNummer"];        
            echo "<tr><td bgcolor=\"#BBBBBB\" align=\"center\">";
            echo strftime("%d %b", strtotime($rows["datum"]));
            echo "</td><td bgcolor=\"#E1E1E1\" align=\"left\">";
            echo " \" ";
            echo "<a id=\"nieuwlink\" href='openingszin.php?zinNummer=";
            echo $rows["zinNummer"];
            echo "'>";
            echo $rows["zinTekst"];
            echo "</a>";
            echo " \" ";
            echo "</td>";//cell sluiten
            echo "<td bgcolor=\"#E1E1E1\" align=\"center\">";
    /*???*/    echo "<input name='" . $rows['zinNummer'] . "' type='checkbox' value='J'/> ";

            echo "</td>";//cell sluiten
            echo "</tr>";
        
        
        
        
        }
    }

    else
    {
        echo "<p>Er zijn geen zinnen gevonden in de database</p>";
    }
}

?>

<!--HEADER-->
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php include ("headermobiletest.php"); ?>




<div id="inhoud">


<div id="tabellijst">
<form action="UpdateZin.php" method="post">

<!-- Tabel overzicht ingestuurde zinnen -->
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1">
<tr>
<th width="11%" height="24" bgcolor="#FF6600">Date</th>
<th width="70%" bgcolor="#FF9900">Openingszin</th>
<th width="auto" bgcolor="#FF9900">OK</th>
</tr>
/* hier wordt functie uitgevoerd*/
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php zinnen();?>


</table>

<input id="verstuurknop" type="submit" name="submit" value="Update">
</form>

</div>
</div>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php include ("footer.php"); ?>

?>

Op de verwerkpagina (Updatezin.php)

Heb ik deze sql om te updaten:

mysql_query("UPDATE `OPENINGSZIN` SET actief = 'J' WHERE zinNummer = '$zinNummer'");

Maar als ik echo op $zinNummer krijg ik geen waarde terug...

Ook niet als ik zeg $zinNummer = POST_["zinNummer"];


Dus hoe krijg ik het werkend dat de het zinNummer van de desbetreffende checkbox wordt meegestuurd? Het zijn totaal 25 zinnen dus elke zin heeft in de database een eigen id (zinNummer)

Moet ik misschien de checkbox value veranderen naar: $rows["zinNummer"] en de naam bvb checkbox[] maken?

Help please :P
Gewijzigd op 07/06/2011 19:23:40 door Erwin Roossien
 
PHP hulp

PHP hulp

25/11/2024 03:21:19
 
- Ariën  -
Beheerder

- Ariën -

07/06/2011 18:55:38
Quote Anchor link
Kan je code-tags gebruiken?
 
Max van den Bosch

Max van den Bosch

07/06/2011 18:56:45
Quote Anchor link
Morgen we ook de code uit UpdateZin.php?

Je zou kunnen proberen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
require 'mysql_connect.inc.php';
$sql="UPDATE `zinNummer` velddatveranderdmoetworden=".$_POST['checkbox']." WHERE id=".$_POST['idvanzin'];
if (mysql_query($sql)){
echo "Update succesvol";
}else{
echo "Iets mislukte. </br>";
echo mysql_error();
}
Gewijzigd op 07/06/2011 18:57:21 door Max van den Bosch
 
Erwin Roossien

Erwin Roossien

07/06/2011 19:04:00
Quote Anchor link
Code uit UpdateZin.php




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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<?php
/******************Connecting*****************************************/
session_start();
ob_start();
function
connectToDatabase($host, $username, $password, $databaseName)
{

    $connection = mysql_connect($host, $username, $password);
    if (!$connection)
    {

        die('verbinding mislukt: ' . mysql_error());
    }

    if (!mysql_select_db($databaseName, $connection))
    {

        die('database niet gevonden');
    }

    return $connection;
}

function
executeQuery($sql, $connection)
{

    $hasExecuted = mysql_query($sql, $connection);
    return $hasExecuted;
}





//*************************Verbinding maken met server********************/
$con = connectToDatabase("localhost", "***", "***", "***");

if (isset($_POST["submit"]))

//&&
   //$_POST['$zinNummer'] == 'J')

   {
    
    $checkbox = $_POST["checkbox"];
    $zinTekst = $_POST["zinTekst"];
    $categorieNaam = $_POST["categorieNaam"];
    $zinNummer = $_POST["zinNummer"];
    $actief = $_POST["actief"];

  
 //$zinNummer etc geeft geen waarde terug via echo //

echo $zinNummer;
echo $actief;
echo $zinTekst;

  

$sql = "UPDATE `OPENINGSZIN`  SET actief = 'J' WHERE zinNummer = '$zinNummer'";
//mysql_query("UPDATE `OPENINGSZIN` SET actief = 'J' WHERE zinNummer = '$zinNummer'");


//$sql = "UPDATE OPENINGSZIN  SET actief='" . $actief . "' WHERE zinNummer='" . $zinNummer . "'";

if (executeQuery($sql, $con))
{

    header("Location:admin.php");
}

else
{
    echo "Er is iets mis gegaan: " . mysql_error();
}

}



?>




Toevoeging op 07/06/2011 19:08:21:

Hey Max, het probleem is dat hij dus geen POST_ waarde herkent op de UpdateZin.php pagina. Als ik echo op $zinNummer krijg ik een geen waarde te zien.
Gewijzigd op 07/06/2011 19:04:32 door Erwin Roossien
 



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.