Wat doe ik fout?

Pagina: 1
Acties:
  • 530 views

Vraag


Acties:
  • 0 Henk 'm!

  • MarnickS
  • Registratie: Februari 2016
  • Laatst online: 29-07 09:33
Ik ben bezig om een site ta maken in html, en ik wou graag een formulier op mijn site maken.
Ik ben nu (dacht ik) klaar, maar nu werkt het in eens niet.
Ik vul het formulier in op mijn site, maar als ik dan naar de mysql database ga krijgen ik de melding: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

De code van de pagina met het formulier (HTML):
<!DOCTYPE html>

<html lang="nl">

<head>
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
<meta charset="utf-8">
<meta name="Overzicht van alle Zeeaquariumwinkels/speciaalzaken" content="Het is altijd moeilijk een aquariumwinkel in de buurt te vinden, hier vind je het grootste overzicht van zeeaquariumwinkels">
<meta name="viewport" content="initial-scale=1.0, width=device-width">
<link rel="stylesheet" href="style.css" type="text/css" media="screen">
</head>

<body>


<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

ga('create', 'UA-96533812-1', 'auto');
ga('send', 'pageview');
</script>


<!-- Go to www.addthis.com/dashboard to customize your tools -->
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-5820291eee215f05"></script>


<header><DIV ALIGN="center"><IMG SRC="https://zeewateraquarium.info/images/banner.jpg" ALT="BANNER" style="width: 600px; max-width: 99%; height: auto;"></DIV></header>


<nav>
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="opstarten.html">Opstarten</a></li>
<li><a href="bewoners.html">Bewoners</a></li>
<li><a href="techniek.html">Techniek</a></li>
<li><a href="winkels.html">Winkels</a></li>
</ul>
</nav>

<div class="midden">

<article>

<h1>Nieuwe winkel toevoegen</h1>
<h3>Weet je een winkel die niet in het overzicht staat? Vul dan dit formulier in.</h3>

<form method="post">
<form method="post" action="toevoegen.php">
<form method="post" action="toevoegen.php?titel=formulier is verzonden">
<form method="post" action="?p=toevoegen&t=formulier is verzonden">
<p>Jouw naam:</p>
<input type="text" name="jenaam" />
<p>Jouw E-Mailadres:</p>
<input type="text" name="mail" />
<p>Naam winkel:</p>
<input type="text" name="naam" />
<p>Adres winkel:</p>
<input type="text" name="adres" />
<p>Provincie:</p>
<select name="provincie"><option value="friesland">Friesland</option><option value="groningen">Groningen</option><option value="drenthe">Drenthe</option><option value="overijssel">Overijssel</option><option value="flevoland">Flevoland</option><option value="noordholland">Noord Holland</option><option value="gelderland">Gelderland</option><option value="utrecht">Utrecht</option><option value="zuidholland">Zuid Holland</option><option value="limburg">Limburg</option><option
value="zeeland">Zeeland</option></select>
<p>Wat verkoopt de winkel:</p>
<input type="checkbox" name="wat" value="vis"> Vissen<br>
<input type="checkbox" name="wat" value="koraal"> Koralen<br>
<input type="checkbox" name="wat" value="aquaria"> Aquaria<br>
<input type="checkbox" name="wat" value="techniek"> Techniek<br>
<input type="checkbox" name="wat" value="overig"> Overige<br>
<p>Omschrijving van de winkel:</p>
<textarea name="omschrijving" rows="5" cols="30"></textarea><br>
<input type="submit" value="Verzenden" name="zend_form" />

</article>

</div>

<footer>
<p><p>© 2017 Zeewateraquarium.info</p></p>
</footer>

</div>

</body>

</html>

de code van de pagina toevoegen.php:

<?php
if(mysql_connect('localhost','root',''))
{
mysql_select_db('sitemasters') or die(mysql_error());
}
else
{
echo 'Kan geen verbinding maken';
exit;
}
if($_SERVER['REQUEST_METHOD'] == 'POST' && !empty($_POST))
{
$aFouten = array();
if($_POST['jenaam'] == '')
{
$aFouten[] = 'Je hebt geen naam ingevuld';
}
if($_POST['mail'] == '')
{
$aFouten[] = 'Je hebt geen emailadres ingevuld';
}
if($_POST['naam'] == '')
{
$aFouten[] = 'Je hebt de naam van de winkel niet ingevuld';
}
if($_POST['adres'] == '')
{
$aFouten[] = 'Je hebt geen adres ingevuld';
}
if($_POST['naam'] == '')
{
if(count($aFouten) != 0)
{
echo 'De volgende fouten zijn opgetreden: <br /><br />';
for($Fi = 0; $Fi < count($aFouten); $Fi++)
{
echo $aFouten[$Fi].'<br />';
}
echo '<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te keren';
}
else
{
mysql_query("INSERT INTO formulier (jenaam,mail,naam,adres) VALUES ('".addslashes($_POST['jenaam'])."','".addslashes($_POST['mail'])."','".addslashes($_POST['naam'])."','".$_POST['adres']."')") or die (mysql_error());

echo 'De gegevens zijn succesvol opgeslagen in de database';
}

De code van de pagina weergeven.html:

<?php
mysql_connect('localhost','root','');
mysql_select_db('sitemasters') or die (mysql_error());

if(mysql_result(mysql_query("SELECT COUNT(id) FROM `formulier`"),0) == 0)
{
echo 'Er staan nog geen berichten in de database';
}
else
{
?>

<table>
<tr>
<td>jenaam:</td>
<td>mail:</td>
<td>naam:</td>
<td>adres:</td>
<td>provincie:</td>
<td>wat:</td>
<td>omschrijving:</td>
</tr>

<?php
$qSelect_berichten = mysql_query('SELECT * FROM `formulier`') or die (mysql_error());
while($aBerichten = mysql_fetch_array($qSelect_berichten))
{
echo '<tr>
<td>'.$aBerichten['jenaam'].'</td>
<td>'.$aBerichten['mail'].'</td>
<td>'.$aBerichten['naam'].'</td>
<td>'.$aBerichten['adres'].'</td>
<td>'.$aBerichten['provincie'].'</td>
<td>'.$aBerichten['wat'].'</td>
<td>'.$aBerichten['omschrijving'].'</td>
</tr>';
}
echo '</table>';
}
?>

Alle reacties


Acties:
  • 0 Henk 'm!

  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 23:26

Onbekend

...

Het gaat dus zeer waarschijnlijk fout bij

mysql_connect('localhost','root','');


Test je dit lokaal of niet?

Speel ook Balls Connect en Repeat


Acties:
  • 0 Henk 'm!

  • Merethil
  • Registratie: December 2008
  • Laatst online: 21:25
Je hebt ook vier <form>-declaraties in elkaar zitten, is dat echt je bedoeling? De top-form doet namelijk helemaal niets, de andere drie zijn alledrie anders...

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Wat je o.a. fout doet is je code dumpen zonder een topictitel de de lading ook maar een beetje dekt (en zonder code-tags notabene), waarvan je niet eens de moeite hebt genomen het te beperken tot de relevante delen, niet aangeeft wat je zélf al hebt geprobeerd/gezocht/gevonden en er van uit gaan dat er hier wel iemand even naar die bult ongefornatteerde code wil gaan staren en je probleem oplossen terwijl de foutmelding vrij duidelijk is en de plek wáár 't zich voordoet nog duidelijker. En als jij dan niet de moeite neemt daar zelf 3 seconden over na te denken... dan heb je zo'n beetje élke regel uit ons Devschuur® Beleid met voeten getreden... Lees naast voorgenoemde meteen even onze Quickstart en probeer het dan, als dat nog nodig is, gerust met een nieuw topic nog eens.

[ Voor 25% gewijzigd door RobIII op 18-06-2017 11:32 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Dit topic is gesloten.