ID uitlezen uit mysql en verkeerde headers versturen html hulp mbv php
Een paar maanden geleden van phphulp het script 'groot inlog systeem' gedownload, aangepast naar eigen behoefden. Alles werkt zo als ik dat graag zou willen, echter is er één maar. In de pagina ledenlijst heb ik het volgende...
$sql = "SELECT naam,actief FROM gebruikers ORDER BY naam ASC";
$query = mysql_query($sql);
while($rij = mysql_fetch_object($query)) {
$naam = htmlspecialchars($rij->naam);
$actief = htmlspecialchars($rij->actief);
if($actief == 0) {
echo "<tr>\n";
echo "<td><font color=\"gray\">".$naam."</font></td>\n"; #niet actieve gebruikers
echo "</tr>\n";
}else{
if($naam ==rijsch73_akkie){}else{ #dit is de admin
echo "<tr>\n";
echo "<td>".$naam."</td>\n"; #dit zijn alle gebruikers
echo "</tr>\n";
} }
}
Nu wil ik van alle gebruikers een link maken of te wel.... <a href="admin.php?edit=$id" title="Bewerk gebruiker $naam">$naam</a> Alleen moet $id nog ingevuld worden. Ik heb van alles geprobeert maar krijg het niet voor elkaar.
##item 2, email versuren
Ook dit werkt volledig, hier wil ik graag de puntjes op de I zetten, wanneer er een e-mail verstuurd wordt vanaf de website verschijnt dit als email adres:
[email protected]; namens RijschoolAkkie.nl [[email protected]]
adminnaam t/m namens hoort er niet bij, in een extern bestand heb ik het volgende staan:
$recipient = "From: [email protected]" . "\r\n";
$header = "MIME-Version: 1.0\r\n";
$header .= "Content-Type: text/html; charset=iso-8859-1\r\n";
$header .= "From: RijschoolAkkie.nl <[email protected]>" . "\r\n";
$header .= "Reply-to: [email protected]" . "\r\n";
$headerklant = 'MIME-Version: 1.0'. "\r\n";
$headerklant .= 'Content-Type: text/html; charset=iso-8859-1' . "\r\n";
$headerklant .= "Reply-to: [email protected]" . "\r\n";
$headerklant .= 'From: RijschoolAkkie.nl <[email protected]>' . "\r\n";
er zijn meerdere pagina's op de website waarvanaf gemaild worden kan...
mail($recipient, $subject ,$mail, $header);
mail($klant, $subjectklant, $inhoud, $headerklant);
Het betreft hier een html e-mail die gegenereerd wordt door php.
Alles in de mail klopt, alleen bovenstaande dus nog niet...
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
$sql = "SELECT id,naam,actief FROM gebruikers ORDER BY naam ASC";
$query = mysql_query($sql);
while($rij = mysql_fetch_object($query)) {
$naam = htmlspecialchars($rij->naam);
$actief = htmlspecialchars($rij->actief);
$id = htmlspecialchars($rij->id);
if($actief == 0) {
echo "<tr>\n";
echo "<td><font color=\"gray\">".$naam."</font></td>\n"; #niet actieve gebruikers
echo "</tr>\n";
}else{
if($naam ==rijsch73_akkie){}else{ #dit is de admin
echo "<tr>\n";
echo "<td>".$naam."</td>\n"; #dit zijn alle gebruikers
echo "</tr>\n";
} }
}
[/code]
nu kan je $id gebruiken (tenminste als je db veld id heet -> zie de query)
Daarnaast begrijp ik je onderste vraag niet helemaal...
$sql = "SELECT id,naam,actief FROM gebruikers ORDER BY naam ASC";
$query = mysql_query($sql);
while($rij = mysql_fetch_object($query)) {
$naam = htmlspecialchars($rij->naam);
$actief = htmlspecialchars($rij->actief);
$id = htmlspecialchars($rij->id);
if($actief == 0) {
echo "<tr>\n";
echo "<td><font color=\"gray\">".$naam."</font></td>\n"; #niet actieve gebruikers
echo "</tr>\n";
}else{
if($naam ==rijsch73_akkie){}else{ #dit is de admin
echo "<tr>\n";
echo "<td>".$naam."</td>\n"; #dit zijn alle gebruikers
echo "</tr>\n";
} }
}
[/code]
nu kan je $id gebruiken (tenminste als je db veld id heet -> zie de query)
Daarnaast begrijp ik je onderste vraag niet helemaal...
onderste vraag: ga maar naar http://www.rijschoolakkie.nl/contact.php vul maar even iets in, dan zie je wel wat ik bedoel. Je ontvang direct een email.
Quote:
* = met deze tekens: <br> maak je gemakkelijk een enter,
in de tekst die je versturen gaat.
in de tekst die je versturen gaat.
kijk eens naar de functie nl2br()
Als ik een veld niet goed heb ingevuld volgt een melding en de mogelijkheid om terug te gaan. Maar dan is het hele formulier weer leeg. Niet klantvriendelijk.
Waarom zou iemand in een tekstveld met <br> gaan werken? Hij/zij kan toch gewoon de enter-toets gebruiken?
Gewijzigd op 04/11/2010 11:36:00 door Obelix Idefix
als ik die functie nl2br gebruik doe ik dat op deze wijze juist?
Toevoeging op 04/11/2010 11:39:47:
enne, hoe houd ik die velden vol dan, wanneer je op vorige klikt is er geen nog niets gePOST, dus zou ik niet weten hoe ik dat dan juist zou moeten doen..
Vind het bijna gemeen van je dat je hem dit voorschotelt. Geen foutafhandeling, onnodig variabelen aanmaken etc. etc. Bouw het dan gelijk eff in of vermeld het even...
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
43
44
45
46
47
48
49
50
51
52
53
54
55
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
49
50
51
52
53
54
55
<?php
$qry = "SELECT
id,
naam,
actief
FROM
gebruikers
ORDER BY
naam
ASC";
# query uitvoeren
if( $sql = mysql_query( $qry ) )
{
# Als er items zijn
if( mysql_num_rows( $sql ) > 0 )
{
# Data weergeven
while( $rec = mysql_fetch_assoc( $sql ) )
{
if( $rec['naam'] == 'rijsch73_akkie' )
{
# Admin
}
else
{
if( $rec['actief'] == 0)
{
# Niet actieve gebruiker
echo '<tr>';
echo '<td><font color="gray">'.$rec['naam'].'</font></td>';
echo '</tr>';
}
else
{
# Actieve gebruiker
echo '<tr>';
echo '<td>'.$rec['naam'].'</td>';
echo '</tr>';
}
}
}
}
else
{
echo 'Geen gebruikers';
}
}
else
{
echo 'Fout in query';
}
?>
$qry = "SELECT
id,
naam,
actief
FROM
gebruikers
ORDER BY
naam
ASC";
# query uitvoeren
if( $sql = mysql_query( $qry ) )
{
# Als er items zijn
if( mysql_num_rows( $sql ) > 0 )
{
# Data weergeven
while( $rec = mysql_fetch_assoc( $sql ) )
{
if( $rec['naam'] == 'rijsch73_akkie' )
{
# Admin
}
else
{
if( $rec['actief'] == 0)
{
# Niet actieve gebruiker
echo '<tr>';
echo '<td><font color="gray">'.$rec['naam'].'</font></td>';
echo '</tr>';
}
else
{
# Actieve gebruiker
echo '<tr>';
echo '<td>'.$rec['naam'].'</td>';
echo '</tr>';
}
}
}
}
else
{
echo 'Geen gebruikers';
}
}
else
{
echo 'Fout in query';
}
?>
en een link maak je nu zo:
deze mappen worden voorzien van inhoud voor de betreffende gebruiker.
Mijn doel is op de ledenpagina.php alleen toegankelijk voor de admin, een overzicht te hebben van elke gebruiker, heeft die een map ja of nee.
Mappen te kunnen verwijderen met een knop naast de gebruiker.
De Situatie van nu is zo:
caamscacm // niet actief, geen map
j // actief geen map
jandegroot // niet actief, wel map
Jori // actief, wel map
mijn inmiddels eigen script, komt overeen met die van 'milo S'
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
43
44
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
<?php
$sql = "SELECT id,naam,actief FROM gebruikers ORDER BY naam ASC";
$query = mysql_query($sql);
while($rij = mysql_fetch_object($query)) {
$naam = htmlspecialchars($rij->naam);
$actief = htmlspecialchars($rij->actief);
$id = htmlspecialchars($rij->id);
if($actief == 0) {
//weergeven elke gebruiker die nog niet geactiveerd is, of momenteel gedeactieveerd is
echo "<tr>\n";
echo "<td><a href=\"admin.php?edit=".$id."\" title=\"Bewerk/bekijk ".$naam." \" style=\"color:grey;\">".$naam."</a></td>\n";
echo "</tr>\n";
} else {
if($naam ==rijsch73_akkie){} #GEBRUIKER AKKIE NIET WEERGEVEN
else {
if ($handle = opendir('files/')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
$filenaam = substr("$file", 3);
if($filenaam ==e){} #standaart map, externe downloads ed
else { #weergeven wanneer er een map voor deze leerling bestaat
if ($filenaam = $filenaam) {
echo "<tr>\n";
echo "<td><a href=\"admin.php?edit=".$id."\" title=\"Bewerk/bekijk ".$naam." \" style=\"color:black;\"> ".$naam."</a></td>
<td><a href=\"verwijdermap.php?delete=$filenaam\" onclick=\"return confirmRemoveMap();\"> ok </a></td>\n";
echo "</tr>\n";
} else {
echo "<tr>\n";
echo "<td><a href=\"admin.php?edit=".$id."\" title=\"Bewerk/bekijk ".$naam." \" style=\"color:black;\"> ".$naam."</a></td>
<td>geen map</td>";
echo "</tr>\n";
}
}
}
}
}
closedir($handle);
} } }
?>
$sql = "SELECT id,naam,actief FROM gebruikers ORDER BY naam ASC";
$query = mysql_query($sql);
while($rij = mysql_fetch_object($query)) {
$naam = htmlspecialchars($rij->naam);
$actief = htmlspecialchars($rij->actief);
$id = htmlspecialchars($rij->id);
if($actief == 0) {
//weergeven elke gebruiker die nog niet geactiveerd is, of momenteel gedeactieveerd is
echo "<tr>\n";
echo "<td><a href=\"admin.php?edit=".$id."\" title=\"Bewerk/bekijk ".$naam." \" style=\"color:grey;\">".$naam."</a></td>\n";
echo "</tr>\n";
} else {
if($naam ==rijsch73_akkie){} #GEBRUIKER AKKIE NIET WEERGEVEN
else {
if ($handle = opendir('files/')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
$filenaam = substr("$file", 3);
if($filenaam ==e){} #standaart map, externe downloads ed
else { #weergeven wanneer er een map voor deze leerling bestaat
if ($filenaam = $filenaam) {
echo "<tr>\n";
echo "<td><a href=\"admin.php?edit=".$id."\" title=\"Bewerk/bekijk ".$naam." \" style=\"color:black;\"> ".$naam."</a></td>
<td><a href=\"verwijdermap.php?delete=$filenaam\" onclick=\"return confirmRemoveMap();\"> ok </a></td>\n";
echo "</tr>\n";
} else {
echo "<tr>\n";
echo "<td><a href=\"admin.php?edit=".$id."\" title=\"Bewerk/bekijk ".$naam." \" style=\"color:black;\"> ".$naam."</a></td>
<td>geen map</td>";
echo "</tr>\n";
}
}
}
}
}
closedir($handle);
} } }
?>
output --->
probleem: gebruiker 'j' heeft geen map, maar er verschijnt wel een knop 'ok' van verwijder, en daarmee verwijder ik de map van 'jori'
Voor de hulp van 'mike' had ik dit script verdeeld over 2 losse stukken.
Wat resulteerd tot één grote overonoverzichtelijke website.
tnx voor alle reacties, hier kan ik wel wat mee!
enne, is er al 1 geweest die weet wat ik fout doe met het e-mailen?
Toevoeging op 04/11/2010 13:58:13:
<tr>
<td><a href="admin.php?edit=49" title="Bewerk/bekijk caamscacm " style="color:grey;">caamscacm</a></td>
</tr>
<tr>
<td><a href="admin.php?edit=34" title="Bewerk/bekijk j " style="color:black;"> j</a></td>
<td><a href="verwijdermap.php?delete=Jori" onclick="return confirmRemoveMap();"> ok </a></td>
</tr>
<tr>
<td><a href="admin.php?edit=34" title="Bewerk/bekijk j " style="color:black;"> j</a></td>
<td><a href="verwijdermap.php?delete=jandegroot" onclick="return confirmRemoveMap();"> ok </a></td>
</tr>
<tr>
<td><a href="admin.php?edit=48" title="Bewerk/bekijk jandegroot " style="color:grey;">jandegroot</a></td>
</tr>
<tr>
<td><a href="admin.php?edit=32" title="Bewerk/bekijk Jori " style="color:black;"> Jori</a></td>
<td><a href="verwijdermap.php?delete=Jori" onclick="return confirmRemoveMap();"> ok </a></td>
</tr>
<tr>
<td><a href="admin.php?edit=32" title="Bewerk/bekijk Jori " style="color:black;"> Jori</a></td>
<td><a href="verwijdermap.php?delete=jandegroot" onclick="return confirmRemoveMap();"> ok </a></td>
</tr>
</table>
exacte output!! (ook dingen dubbel)
Toevoeging op 04/11/2010 14:17:52:
ontvangen e-mails bevatten dit altijd als afzender
[email protected]; namens; RijschoolAkkie.nl [[email protected]]
haha
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php
$qry = "SELECT
id,
naam,
actief
FROM
gebruikers
ORDER BY
naam
ASC";
# query uitvoeren
if( $sql = mysql_query( $qry ) )
{
# Als er items zijn
if( mysql_num_rows( $sql ) > 0 )
{
# Data weergeven
while( $rec = mysql_fetch_assoc( $sql ) )
{
# Gebruiker mag niet gelijk aan rijsch73_akkie zijn
if( $rec['naam'] != 'rijsch73_akkie')
{
# Map staat gelijk aan gebruikers naam
$dir = $rec['naam'];
if( $rec['actief'] != 0 )
{
# ACTIEVE GEBRUIKER
# Map check
if( is_dir( $dir ) )
{
echo 'Gebruiker: '.$rec['naam'].' heeft een map.';
}
else
{
echo 'Gebruiker: '.$rec['naam'].' heeft <b>geen</b> map.';
}
}
else
{
# NIET ACTIEVE GEBRUIKER
# Map check
if( is_dir( $dir ) )
{
echo 'Gebruiker: '.$rec['naam'].' heeft een map maar is niet actief.';
}
else
{
echo 'Gebruiker: '.$rec['naam'].' heeft <b>geen</b> map en is niet actief.';
}
}
}
}
}
else
{
echo 'Geen gebruikers';
}
}
else
{
echo 'Fout in query';
}
?>
$qry = "SELECT
id,
naam,
actief
FROM
gebruikers
ORDER BY
naam
ASC";
# query uitvoeren
if( $sql = mysql_query( $qry ) )
{
# Als er items zijn
if( mysql_num_rows( $sql ) > 0 )
{
# Data weergeven
while( $rec = mysql_fetch_assoc( $sql ) )
{
# Gebruiker mag niet gelijk aan rijsch73_akkie zijn
if( $rec['naam'] != 'rijsch73_akkie')
{
# Map staat gelijk aan gebruikers naam
$dir = $rec['naam'];
if( $rec['actief'] != 0 )
{
# ACTIEVE GEBRUIKER
# Map check
if( is_dir( $dir ) )
{
echo 'Gebruiker: '.$rec['naam'].' heeft een map.';
}
else
{
echo 'Gebruiker: '.$rec['naam'].' heeft <b>geen</b> map.';
}
}
else
{
# NIET ACTIEVE GEBRUIKER
# Map check
if( is_dir( $dir ) )
{
echo 'Gebruiker: '.$rec['naam'].' heeft een map maar is niet actief.';
}
else
{
echo 'Gebruiker: '.$rec['naam'].' heeft <b>geen</b> map en is niet actief.';
}
}
}
}
}
else
{
echo 'Geen gebruikers';
}
}
else
{
echo 'Fout in query';
}
?>
Denk dat dit is wat je bedoelt...Link kan je zelf wel invoegen...
tnx Milo S, dit is idd wat ik zocht!!
Jori Heidstra op 04/11/2010 13:53:03:
mijn inmiddels eigen script, komt overeen met die van 'milo S'
In de verste verten niet, helaas,
qua netheid ed, kan ik er inderdaad niet half aan tippen.
Maar ik zit nog steeds met mijn mail (probleem), is er iemand die me daar nog mee helpen kan?
Toevoeging op 05/11/2010 02:25:56:
nog een vraagje;
wat als er wel een map bestaat, maar de gebruiker bestaat niet meer.
Kan ik dat ook mbv dit script uitlezen?