hallo allemaal,

ik ben bezig met een script en ik loop ergens tegen aan, het gaat als volgt:

ik moet er voor zorgen dat als de klant pagina 1 heeft ingevuld de data verstuurt word naar het database vervolgends, komt hij aan bij pagina 2 en daar moet zijn speciaal gegenereerde wachtwoord (die al in zijn database row staat) tevoorschijn kom. ik wil dit doen door middel van zijn userID die hij heeft meegekregen van pagina 1.

ik wil dus dat iedereen met een userid zijn password row te zien krijgt, (een ander script heeft zijn wachtwoord al gegenereerd en in zijn row geplaats dus dit heb ik al voor elkaar gekregen) ik er nog niet aan begonnen heb alleen een idee hoe ik het wil aanpakken maar ik weet simpel weg niet waar ik moet kijken, als ik zijn row probeer op te vragen via zijn userID lukt het simpel weg niet dus heb alles weer verwijderd en ben weer een aantal keer uit scratch begonnen maar ik kom voor mijn gevoel geen stap verder hopelijk kan iemand mij vertellen hoe ik zou moeten beginnen. ben nieuwe met session dus graag ook code en uitleg hoe ik mijn userID in me database krijg in een session het tergelijkertijd door passeer aan de volgende pagina en doormiddel van userID de klant zijn password kan aanvragen.


ik hoop dat het niet al te warrig is.

groetjes,

Jan
dit is me query dus:

$sql="SELECT naam, email FROM users WHERE id = ''".$_SESSION['userid']."'";
$result = mysqli_query($con,$sql);

$row = mysqli_fetch_assoc($result);
echo $row['naam'].' code '.$row['code1'];


wat gaat er precies fout in de code? ben niet ervaren
Een single-quote te veel na je =
En je mist ook (weer) code1 als veld in je SELECT.

Als je nou mysqli_error($con); gebruikt, dan zie je de foutmelding.
iedereen super bedankt voor alle tijd en hulp!!!!!
alles werkt nu hoe ik het wel kan eindelijk weer verder met dingen die ik wel snap dus ik val jullie verder niet meer lastig (voorlopig) :P als jullie nog enige tips hebben met linkjes erbij om dit onderwerp in de toekomst beter te snappen zou ik dat erg op prijs stellen :) nogmaals bedankt !
Ja ik heb nog een tip. Je eureka moment dat hij werkt is mooi. :)
Maar je vergeet een hele belangrijke waar ik al een hint op heb gegeven en Thomas over verder gaat, het is nog lek.


<?php
//we starten een session
session_start();

// voor het gemak
$code1 = 'een ogenblik geduld';

// database connectie
$con=mysqli_connect("localhost","root","","test");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }


$name = mysqli_real_escape_string($con, $_POST['naam']);
$code1 = mysqli_real_escape_string($con, code1);
$email = mysqli_real_escape_string($con, $_POST['email']);

$sql = mysqli_query($con,"INSERT INTO users (naam, ,code, email)
VALUES ('".$name."', '".$code1."', '".$email."')");
// voor debuggen
if (!mysqli_query($con,$sql)) {
  echo $sql.'<br>';
  die('Error: ' . mysqli_error($con));
}

// auto-generated id, nu de funpart
$newUser = mysqli_insert_id($con);
//maken een session aan
$_SESSION['userid'] = $newUser;

// database sluiten
mysqli_close($con);
//automatisch naar volgende pagina
header('Location: r2_page.html');
// einde oefening.
exit();

?>


Probeer altijd voor jezelf er een verhaal van te maken.
Dan word je puzzel een stuk makkelijker.
Als ik code schrijf dan begin ik altijd met comments schrijven. (// <-- deze dus)

<?php
// ik wil een session starten

// als er iets is gepost dan..


//controles uitvoeren

// verbinding maken met database

// waardes onschadelijk maken

// query uitvoeren


// als het lukt dan gaan we de session vullen

// alles goed?

//volgende pagina
?>

Als je dit zo een beetje aanhoud, dan is het veel makkelijker als het ergens misgaat dat je weet waar het probleem ongeveer zit. Immers als de query mislukt dan zal het in het blokje staan bij query uitvoeren enz.

Reageren