Script werkt niet naar behoren

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Kachbe Zemmel

Kachbe Zemmel

10/02/2017 09:57:40
Quote Anchor link
Kan iemand de fout hierin vinden?


voegtoe.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
<?php
if (empty($_POST)){
//formulier
?>

<h1>GEREEDSCHAP</h1>
<h3>Toevoegen</h3>
<form action="voegtoe.php" method="post">
<input type="number" name="id" placeholder="id"><br />
<input type="text" name="naam" placeholder="naam"><br />
<input type="number" name="prijs" placeholder="prijs"><p />
<input type="Submit">
</form>
<?php
}else{
//verwerking
 include("connect.php");  
      $id=$_POST["id"];
      $naam=$_POST["naam"];
      $prijs=$_POST["prijs"];
      $sql = "INSERT INTO `gereedschap` (`id`, `naam`, `prijs`)
            VALUES ('"
.$id."', '".$naam."', '".$prijs."');";
      $result = $conn->query($sql);
 header('Location: toon.php');
}

?>

verander.php
<?php
  if (empty($_POST)){
   ?>

                <form action="verander.php" method="post">
                               <input type="number" name="id" placeholder="id"><br />
                               <input type="text" name="naam" placeholder="naam"><br />
                               <input type="number" name="prijs" placeholder="prijs"><p />
                               <input type="submit">
                </form>
                              
                              
                              
                <?php  
  }
  else{
    //verwerking van de POST
    $id = $_POST['id'];
    $naam = $_POST['naam'];
    $prijs = $_POST['prijs'];
    include('connect.php');
    $sql = "UPDATE `gereedschap` SET `id` = '".$id."', `naam` = '".$naam."', `prijs` = '".$prijs."' WHERE `gereedschap`.`id` = ".$id;
    $result = $conn->query($sql);
              
                //terug naar toon.php
                  header("Location: toon.php");
  }

?>


verwijder.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
<?php
  if (empty($_POST)){
    ?>

                               <form action="verwijder.php" method="post">
                               <input type="number" name="id" placeholder="id"><br />
                               <input type="submit">
                </form>
                <?php  
  }
  else{
    //verwerking van de POST
    $id = $_POST['id'];
    include('connect.php');
                $sql="DELETE from gereedschap WHERE id = '".$id."'";  
                               $result = $conn->query($sql);
              
                //terug naar toon.php
                  header("Location: toon.php");
  }

 
 
?>



connect.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
<?php
$servername
= "localhost";
$username = "toetssql";
$password = "toetssql";
$dbname = "toetssql";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

 
?>


toon.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
<?php
include ("connect.php");
 
$sql = "SELECT id, naam, prijs FROM gereedschap";
$result = $conn->query($sql);
//uitzetten php want we gaan de tabel en de tabel header maken (in html)
?>

<table border="1">
  <thead>
    <th>id</th><th>naam</th><th>prijs</th>
  </thead>
  <tbody>
  <?php
  //php gaat weer aan omdat het uitlezen van de records een php-gebeuren is
  if ($result->num_rows > 0) {
      // output data of each row
      while($row = $result->fetch_assoc()) {
          echo "<tr><td>" . $row["id"]. "</td><td>" . $row["naam"]. "</td><td>" . $row["prijs"]. "</td></tr>";
      }
  }
else {
      echo "0 results";
  }

  $conn->close();
  ?>

</tbody>
 
</table>


Bas IJzelendoorn:
Graag in het vervolg bij code, [code] [/code] tags gebruiken.
Gewijzigd op 10/02/2017 12:45:53 door - Ariën -
 
PHP hulp

PHP hulp

15/11/2024 22:58:28
 
- Ariën  -
Beheerder

- Ariën -

10/02/2017 10:02:51
Quote Anchor link
Zou je de code tussen [code] tags willen plaatsen (zie 'Veelgestelde Vragen') en een duidelijke titel gebruiken, door je bericht te wijzigen? Alvast bedankt.

Verder zijn we benieuwd wat er gebeurt.
Gewijzigd op 10/02/2017 10:04:54 door - Ariën -
 
Frank Nietbelangrijk

Frank Nietbelangrijk

10/02/2017 11:47:29
Quote Anchor link
Wat waarschijnlijk niet werkt is de redirect naar toon.php. Dit komt omdat je headers verstuurd NADAT je output (content) verstuurd hebt. Een splitsing van je code in twee gedeeltes is nodig om dit probleem op te lossen:

Deel 1: Je php applicatie MAAR zonder ook maar enige output. enigste uitzondering kan zijn het weergeven van een fatale foutmelding waarna een
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php exit(); ?>
geplaatst is.

Deel 2: De output (template) van je pagina.

Je krijgt dan iets als:
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
<?php

// DEEL 1: start applicatie

// initialisatie van variabelen

$naam = '';

if($_SERVER['REQUEST_METHOD'] == 'POST')
{

    $naam = $_POST['naam'];

    // validatie
    if(strlen($naam) > 1)
    {

        header('Location: toon.php');
        exit;
    }
}


// DEEL 2: De OUTPUT van je applicatie. Hier geen PHP meer behalve om variabelen te echo-en
// (al dan niet met een foreach)

?>

<doctype!>
<html>
    <head>
        <title>Mijn Formulier</title>
    </head>
    <body>
        <form action="" method="post">
            <input type="text" name="name" value="<?php echo $naam; ?>">
            <button>Verzenden</button>
        </form>
    </body>
</html>
?>

Gewijzigd op 10/02/2017 11:50:58 door Frank Nietbelangrijk
 
Kachbe Zemmel

Kachbe Zemmel

10/02/2017 11:50:37
Quote Anchor link
Ah top, dankjewel!
 
- Ariën  -
Beheerder

- Ariën -

10/02/2017 12:46:51
Quote Anchor link
Ik heb de titel inmiddels zelf aangepast naar 'Script werkt niet naar behoren'.
Gelieve in het vervolg zelf een duidelijke titel in te voeren die je probleem of vraagstelling aangeeft.
 



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.