Serverfout 500 bij MYSQL INSERT

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Louis Deconinck

Louis Deconinck

12/03/2016 12:02:52
Quote Anchor link
Ergens maak ik een foutje bij de regel van INSERT INTO, maar ik kan het niet vinden.

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
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);

$link = new mysqli("***", "***", "***") or die (mysql_error());
mysqli_select_db($link, "***");
?>


<!doctype html>
<html>
<head>

</head>
<body>
<?php if (empty($_POST)) { ?>

<form action=<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?> method="post">
<input type="text" name="jaar" placeholder="jaar" /><br/>
<input type="text" name="rank" placeholder="rank" /><br/>
<input type="text" name="titel" placeholder="titel" /><br/>
<input type="text" name="auteur" placeholder="auteur(s)" /><br/>
<input type="text" name="meerdereauteurs" placeholder="meerdere auteurs (0/1)" /><br/>
<input type="text" name="uitgever" placeholder="uitgever (html url)" /><br/>
<input type="text" name="url" placeholder="aankooplink (tekst + html url)" /><br/>
<input type="text" name="img" placeholder="afbeelding url" /><br/>
<input type="submit" value="verzenden" />
</form>

<?php
} else {
 if ($_POST["jaar"]=="2015") {

  $result = mysql_query("SELECT * FROM managementboeken2015", $link);
  $num_rows = mysql_num_rows($result);
  $i=$_POST["rank"];
  while ($i!=$num_rows){
   $newrank=$num_rows-1;
   $sql = "UPDATE managementboeken2015 SET rank='$newrank' WHERE id='$num_rows'";
   $num_rows=$num_rows-1;
  }

  INSERT INTO managementboeken2015 (rank, titel, auteur, meerdereauteurs, uitgever, url, img) VALUES ('$_POST["rank"]', '$_POST["titel"]', '$_POST["auteur"]', '$_POST["meerdereauteurs"]', '$_POST["uitgever"]', '$_POST["url"]', '$_POST["img"]');
 
}
}

?>


</body>
</html>
Gewijzigd op 12/03/2016 12:06:42 door Louis Deconinck
 
PHP hulp

PHP hulp

27/09/2021 00:26:54
 
Shamrock Modelbouw

Shamrock Modelbouw

12/03/2016 13:07:43
Quote Anchor link
Je begint met de mysql query ipv de php code om een query uit te voeren.
Een deel ontbreekt, namelijk mysql_query(" op regel 41
Ook de variabele kloppen niet, vergelijk maar eens met onderstaande code

Probeer dit eens:
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
<?php
} else {
 if ($_POST["jaar"]=="2015") {

  $result = mysql_query("SELECT * FROM managementboeken2015", $link);
  $num_rows = mysql_num_rows($result);
  $i=$_POST["rank"];
  while ($i!=$num_rows){
   $newrank=$num_rows-1;
   $sql = "UPDATE managementboeken2015 SET rank='$newrank' WHERE id='$num_rows'";
   $num_rows=$num_rows-1;
  }

  mysql_query('INSERT INTO managementboeken2015 (rank, titel, auteur, meerdereauteurs, uitgever, url, img) VALUES ("'.$_POST["rank"].'", "'.$_POST["titel"].'", "'.$_POST["auteur"].'", "'.$_POST["meerdereauteurs"].'", "'.$_POST["uitgever"].'", "'.$_POST["url"].'", "'.$_POST["img"].'"');

 
}
}

?>


PS: Een tip die hier al vaker gegeven is, update naar mysqli ipv mysql
 
Pipo Clown

Pipo Clown

12/03/2016 13:35:05
Quote Anchor link
TO gebruikt MySQL en MySQLi door elkaar.

Bij het maken van de database verbinding wordt (grotendeels) MySQLi gebruikt, verder in de code wordt MySQL gebruikt, dus er is geen geldige MySQL verbinding.
 



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.