ID uitlezen uit mysql en verkeerde headers versturen html hulp mbv php

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jo  prive

Jo prive

04/11/2010 10:21:46
Quote Anchor link
##item 1, inlogscript
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...
 
PHP hulp

PHP hulp

25/04/2024 17:53:43
 
Mick ForSure

Mick ForSure

04/11/2010 10:48:20
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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...
 
Jo  prive

Jo prive

04/11/2010 11:21:01
Quote Anchor link
tnx, ik ga het direct proberen.
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.
 
Paul R

Paul R

04/11/2010 11:26:32
Quote Anchor link
van je website:
Quote:
* = met deze tekens: <br> maak je gemakkelijk een enter,
in de tekst die je versturen gaat.

kijk eens naar de functie nl2br()
 
Obelix Idefix

Obelix Idefix

04/11/2010 11:33:05
Quote Anchor link
Geen antwoord op je vraag, maar controleer alstublieft spelling: voorbeelden: astublieft en een zin 'Aangezien lesgeven een hobby van mij is; en het studentenleven al duur genoeg is. ben ik één van de'

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
 
Jo  prive

Jo prive

04/11/2010 11:37:27
Quote Anchor link
$content = nl2br($_POST[''], false);
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..
 
Milo S

Milo S

04/11/2010 13:30:07
Quote Anchor link
@ Mick,
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)
PHP script in nieuw venster Selecteer het PHP script
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
<?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';
}

?>


en een link maak je nu zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo '<a href="admin.php?edit='.$rec['id'].'">'.$rec['naam'].'</a>';
?>
 
Jo  prive

Jo prive

04/11/2010 13:53:03
Quote Anchor link
Voor elke gebruiker maakt de admin mappen aan al dan niet,
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)
PHP script in nieuw venster Selecteer het PHP script
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
<?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);  

            }     }     }

            
?>

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]]
 
Milo S

Milo S

04/11/2010 14:37:54
Quote Anchor link
Wil je jou rommeltje niet vergelijken met mijn gestructureerde script? Danku :D!
haha

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?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';
}

?>


Denk dat dit is wat je bedoelt...Link kan je zelf wel invoegen...
 
Jo  prive

Jo prive

04/11/2010 15:09:58
Quote Anchor link
tnx Milo S, dit is idd wat ik zocht!!
 
- SanThe -

- SanThe -

04/11/2010 15:13:33
Quote Anchor link
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,
 
Jo  prive

Jo prive

05/11/2010 00:00:03
Quote Anchor link
haha, het resultaat leek wel gelijk!!
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?
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.