Probleem met WHILE
op men site kan je een form invullen in een popup venster (hier kan je een plan naam invullen)
nu wil ik controleren of er wel iets ingevuld word en of hetgeen dat ingevuld word niet al in de database zit
ik doe dit met volgens script
Code (php)
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
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
<?php
session_start();
require 'mysqldb.php';
$sql="SELECT * FROM plan WHERE Username='".$_SESSION['Username']."'";
if ($result=mysql_query($sql))
{
while ($gegevens=mysql_fetch_assoc($result))
{
if ($_POST['plan_naam'] == '' )
{
echo 'leeg';
}
elseif ($_POST['plan_naam'] == $gegevens['naam_plan'])
{
echo 'in gebruik';
}
else
{
echo $_SESSION['Username'];
}
}
}
else
{
echo 'Foutje: '.mysql_error().'.<br>';
echo 'sql';
}
?>
session_start();
require 'mysqldb.php';
$sql="SELECT * FROM plan WHERE Username='".$_SESSION['Username']."'";
if ($result=mysql_query($sql))
{
while ($gegevens=mysql_fetch_assoc($result))
{
if ($_POST['plan_naam'] == '' )
{
echo 'leeg';
}
elseif ($_POST['plan_naam'] == $gegevens['naam_plan'])
{
echo 'in gebruik';
}
else
{
echo $_SESSION['Username'];
}
}
}
else
{
echo 'Foutje: '.mysql_error().'.<br>';
echo 'sql';
}
?>
Maar ik krijg na op de knop van het formulier te drukken enkel een wit scherm
als ik de while weg laat en ga vergelijken met een bepaald woord wil hij wel dus bijvoorbeeld zo
Code (php)
dus volgens mij ligt het probleem bij de while
althans gebruik ik de while loop in tal van andere scripts ook op dezelfde manier en daar werkt hij wel!
dacht eerst dat het aan de browser lag maar heb op alle bekende browser getest en nergens wil hij werken met het eerste script
zelfs met de erorrs aanstaan krijg ik enkel een wit scherm
alle hulp is welkom
mvg johan
Gewijzigd op 01/01/1970 01:00:00 door Johan
Volgens mij moet je op regel 9 dubbele quotes gebruiken om aan te duiden dat ie leeg is: == "")
Ik denk eerder dat $_SESSION['Username'] leeg is, echo die eens.
ik heb nu ook eens dit geprobeerd maar nog steeds enkel een wit scherm
Code (php)
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
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
<?php
session_start();
require 'mysqldb.php';
$sql="SELECT COUNT(plan_naam) AS aantal_plannen FROM plan WHERE Username='".$_SESSION['Username']."' AND naam_plan='".mysql_real_escape_string($_POST['plan_naam'])."'";if ($result=mysql_query($sql))
if ($_POST['plan_naam'] == '' )
{
echo 'leeg';
}
else
{
if ($result=mysql_query($sql))
{
if($result['aantal_plannen'] < 1)
{
echo 'goed zo'.$_SESSION['Username']. 'tis gelukt';
}
else
{
echo 'in gebruik!';
}
}
else
{
echo 'Foutje: '.mysql_error().'.<br>';
echo 'sql';
}
}
?>
session_start();
require 'mysqldb.php';
$sql="SELECT COUNT(plan_naam) AS aantal_plannen FROM plan WHERE Username='".$_SESSION['Username']."' AND naam_plan='".mysql_real_escape_string($_POST['plan_naam'])."'";if ($result=mysql_query($sql))
if ($_POST['plan_naam'] == '' )
{
echo 'leeg';
}
else
{
if ($result=mysql_query($sql))
{
if($result['aantal_plannen'] < 1)
{
echo 'goed zo'.$_SESSION['Username']. 'tis gelukt';
}
else
{
echo 'in gebruik!';
}
}
else
{
echo 'Foutje: '.mysql_error().'.<br>';
echo 'sql';
}
}
?>
hij staat er 2 x in
btw: die kun je er ook wel uit gooiene je start hem maar maakt hem nooit af..???
Gewijzigd op 01/01/1970 01:00:00 door Yoram
ondertussen heb ik de oplossing gevonden
Code (php)
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
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
<?php
session_start();
require 'mysqldb.php';
$sql="SELECT COUNT(naam_plan) AS aantal_plannen FROM plan WHERE Username='".$_SESSION['Username']."' AND naam_plan='".mysql_real_escape_string($_POST['plan_naam'])."'";
if ($_POST['plan_naam'] == '' )
{
include 'geen_naam.html';
header('refresh:3; url=nieuw_plan.php');
}
else
{
if ($result=mysql_query($sql))
{
if($resulta=mysql_fetch_array($result))
{
if ($resulta['aantal_plannen'] < 1)
{
$sql_a="INSERT INTO plan (naam_plan, Username) VALUES ('".$_POST['plan_naam']."', '".$_SESSION['Username']."')";
if ($resultaat=mysql_query($sql_a))
{
echo '<script language="javascript">alert('Uw plan is aangemaakt!'); window.close();</script>';
}
else
{
echo 'Foutje: '.mysql_error().'.<br>';
echo $Sql_a;
}
}
else
{
include 'naam_in_gebruik.html';
header('refresh:3; url=nieuw_plan.php');
}
}
}
else
{
echo 'Foutje: '.mysql_error().'.<br>';
echo '$sql';
}
}
?>
session_start();
require 'mysqldb.php';
$sql="SELECT COUNT(naam_plan) AS aantal_plannen FROM plan WHERE Username='".$_SESSION['Username']."' AND naam_plan='".mysql_real_escape_string($_POST['plan_naam'])."'";
if ($_POST['plan_naam'] == '' )
{
include 'geen_naam.html';
header('refresh:3; url=nieuw_plan.php');
}
else
{
if ($result=mysql_query($sql))
{
if($resulta=mysql_fetch_array($result))
{
if ($resulta['aantal_plannen'] < 1)
{
$sql_a="INSERT INTO plan (naam_plan, Username) VALUES ('".$_POST['plan_naam']."', '".$_SESSION['Username']."')";
if ($resultaat=mysql_query($sql_a))
{
echo '<script language="javascript">alert('Uw plan is aangemaakt!'); window.close();</script>';
}
else
{
echo 'Foutje: '.mysql_error().'.<br>';
echo $Sql_a;
}
}
else
{
include 'naam_in_gebruik.html';
header('refresh:3; url=nieuw_plan.php');
}
}
}
else
{
echo 'Foutje: '.mysql_error().'.<br>';
echo '$sql';
}
}
?>
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?
if ($result=mysql_query($sql)){
#while
}else{
echo 'Foutje: '.mysql_error().'.<br>';
echo 'sql';
}
?>
if ($result=mysql_query($sql)){
#while
}else{
echo 'Foutje: '.mysql_error().'.<br>';
echo 'sql';
}
?>
probeer eens:
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?
$result = mysql_query($sql) or die('Foutje: ' .mysql_error().'.<br/>');
?>
[b]Edit[/b]:
Volgens mij heb je het antwoord al :/
$result = mysql_query($sql) or die('Foutje: ' .mysql_error().'.<br/>');
?>
[b]Edit[/b]:
Volgens mij heb je het antwoord al :/
Gewijzigd op 01/01/1970 01:00:00 door Pieter van Linschoten
Rot op met je or die(), Lapidi. Waag het niet dat nog ooit eens te adviseren. Juist wat de TS doet in z'n script is goed, wat jij doet niet. Het enige dat de TS wel moet doen is variabelen buiten quotes halen.
je hebt het op '$sql' denk ik daar heb ik even over gezien :-)