login  Naam:   Wachtwoord: 
Registreer je!
 Forum

geen ingave in DB mogelijk...

Offline Fred - 22/10/2006 18:15
Avatar van FredNieuw lid Hello allemaal,

Ik krijg wel connectie met m'n DB maar krijg er geen berichten in geplaatst. Indien ik handmatig data invoer in m'n mysql krijg ik wél 'n uitlezing...
m'n script :

<?php
include("connectie.php");
if(isset($_POST["opslaan"]))
{
$email=$_POST["email"];
$opmerking=$_POST["opmerking"];
$sql="insert into gastenboek
(email, opmerking)
values
('$email', '$opmerking')
";
mysql_query($sql);
}

staat hier ergens een foutje in ??

thx !

11 antwoorden

Gesponsorde links
Offline Stefan14 - 22/10/2006 18:17
Avatar van Stefan14 PHP gevorderde staat niet echt een fout in, behalve dat ik de voorkeur geef aan SQL statement in hoofdletters en variabelen buiten de quotes.

maar ik zou zeggen, zet eens even or die (mysql_error()); achter je mysql_query($sql);

probeer hier een gewoonte van te maken.
Offline Gerard - 22/10/2006 18:20
Avatar van Gerard Ouwe rakker 1) Ga zelf debuggen
- Zet een echo binnen je if-statement om te zien dat hij ook echt voldoet aan die voorwaarde
- Zet echo mysql_error(); erbij om te zien of er fouten waren bij het invoeren in de database
2) Schrijf je SQL statements op een fatsoenlijke manier
  1. <?php
  2. mysql_query("INSERT INTO gastenboek (email, opmerking)
  3. VALUES ('" . mysql_real_escape_string($_POST['email']) . "',
  4. '" . mysql_real_escape_string($_POST['opmerking']) . "')");

3) Indent je code, maak gebruik van tabs/spaties om goed te zien op welk niveau alles zich bevind
  1. <?php
  2. if ($conditie) {
  3.  
  4. while ($aIets = mysql_fetch_assoc($query))
  5. {
  6. echo $aIets['veldje'];
  7. }
  8.  
  9. }
Offline gothmog - 22/10/2006 18:21 (laatste wijziging 22/10/2006 18:25)
Avatar van gothmog Lid Beste manier is dit:
  1. <?php
  2. include("connectie.php");
  3. if(isset($_POST['opslaan']))
  4. {
  5. $email=$_POST['email'];
  6. $opmerking=$_POST['opmerking'];
  7. $select=mysql_query("INSERT INTO gastenboek
  8. (email, opmerking)
  9. VALUES
  10. ('".$email."', '".$opmerking."')
  11. ") or die(mysql_error());
  12. }


Even verbeterd:p
Offline Fred - 22/10/2006 18:22 (laatste wijziging 22/10/2006 18:28)
Avatar van Fred Nieuw lid neen, doet niks ?!
als 'k op de knop druk om het bericht in het gastenboek te plaatsen, gebeurt er gewoon niks...

script connectie :

<?php
if(!@mysql_connect("localhost","root",""))
{
mail("fredddho@skynet.be","fout met de database","fout");
die(" probeer het later opnieuw eens ");
}
mysql_select_db("databasenaam");
?>

iets misgeschreven ??
Offline Gerard - 22/10/2006 18:29
Avatar van Gerard Ouwe rakker
  1. <?php
  2.  
  3. require_once 'connectie.php';
  4.  
  5. if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  6.  
  7. if (isset($_POST['email'], $_POST['opmerking'])) {
  8.  
  9. $qNewMessage = mysql_query("INSERT INTO gastenboek (email, opmerking)
  10. VALUES ('" . mysql_real_escape_string($_POST['email']) . "',
  11. '" . mysql_real_escape_string($_POST['opmerking']) . "')");
  12.  
  13. if ($qNewMessage) {
  14. echo 'Uw bericht is succesvol geplaatst';
  15. } else {
  16. echo 'Het is tijdelijk niet mogelijk om berichten te plaatsen'
  17. . '<!-- MYSQL ERROR : ' . mysql_error() . ' -->';
  18. }
  19.  
  20. }
  21.  
  22. }
Offline gothmog - 22/10/2006 18:31
Avatar van gothmog Lid Als er niks gebeurt, is er dus geen error. Doe je wel wat met de gevens (laat ik het maar even vragen).
Offline Fred - 22/10/2006 19:00
Avatar van Fred Nieuw lid wel, die zouden IN de database moeten geraken...maar dat schijnt niet te lukken....ook niet met het laatste script ?!
Offline Gerard - 22/10/2006 19:03 (laatste wijziging 22/10/2006 20:52)
Avatar van Gerard Ouwe rakker Ik merk er totaal niks van dat je zelf aan het debuggen bent gegaan en zal dus niet meer reageren in dit topic.

edit
Citaat:
christ ?! van hulp gesproken zeg !!

Ik help je alleen maar als ik zelf merk dat je ook echt zelf wat probeert. Het enige wat jij tot nu toe reageert is "de oplossing uit de post van nickname werkt niet". Ja HALLO, ik kan ook oplossingen van anderen pakken en zeggen dat het niet werkt.

Ik wil zien wat je zelf hebt geprobeert en waarom dat JIJ denkt dat het niet werkt.
Offline Fred - 22/10/2006 19:34 (laatste wijziging 22/10/2006 19:39)
Avatar van Fred Nieuw lid christ ?! van hulp gesproken zeg !!

Is er tóch iemand die mij wil helpen ?
ligt het mssh aan m'n mysql-structuur :

CREATE TABLE `gastenboek` (
`id` int(11) NOT NULL auto_increment,
`email` varchar(255) NOT NULL default '',
`opmerking` text NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=3 ;
Offline Thomas - 23/10/2006 09:04
Avatar van Thomas Moderator AUTO_INCREMENT=3

Er zijn dus al 2 (of 3?) records toegevoegd.

Overigens, als er niets in je database wordt toegevoegd, en de fout zit hem niet in de query, dan moet je wellicht de fout ergens anders gaan zoeken.

In je formulier bijvoorbeeld.
Bevat deze method="post"?
Bestaat er wel een (submit-)veld "opslaan"?

Bewaar vooral je geduld en probeer zelf wat uit. Dit is nu niet bepaald een van de moeilijkste vragen ooit die ik op dit forum zie. Ook heeft het weinig zin om te gaan roepen naar de personen die je proberen te helpen. Dit gebeurt geheel op vrijwillige basis - we zijn je niets verschuldigd en hoeven je ook geen foutloze oplossingen aan te leveren. Van zelf proberen leer je veel meer.
Offline Fred - 24/10/2006 07:10
Avatar van Fred Nieuw lid ok, 'k ga mijn current state-of-mind opnieuw rustig stellen.

Mijn excuses mocht 'k iemand op de tenen hebben getrapt.
'k heb wél degelijk proximus' script geprobeerd en dit gaf zelfs geen foutmelding ( moest ik erbij hebben gezet waarschijnlijk...)

'k ga vanavond nog wat dingen proberen.

nogmaals : SORRY GUYS !! 't ligt aan ik : nogal nerveus persoon...

bedankt voor jullie hulp ! 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.444s