na verzenden blokkeren

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior, Medior and Junior SAP HANA Developer

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Veldhoven Vacature ID: 12696 Introductie Our client is the world's leading provider of lithography systems for the semiconductor industry, manufacturing complex machines that are critical to the production of integrated circuits or chips. Our purpose is “unlocking the potential of people and society by pushing technology to new limits”. We do this guided by the principles “Challenge”, “Collaborate” and “Care”. Wat verwachten we van jou? SAP Certified Application Associate - SAP HANA Cloud Modeling (training and/or certification) Bachelor degree or higher Excellent understanding of SAP HANA (2.0 / Cloud), Data Modelling and writing

Bekijk vacature »

Pagina: « vorige 1 2 3 volgende »

Michel van B

Michel van B

29/12/2009 10:37:00
Quote Anchor link
begrijp ik het goed dat alle gebruikers eerst in mijn database moeten staan en daar de unieke string die doormiddel van rand() wordt gemaakt moeten worden opgeslagen?

Als dat zo is dan zit ik met een probleempje want ik weet de email adressen van de ontvangers nog niet!!
 
PHP hulp

PHP hulp

26/11/2024 02:42:09
 
Pepijn

Pepijn

29/12/2009 10:39:00
Quote Anchor link
Maar zolang je de geen mailtjes verstuurd word je enquete nog niet ingevuld.
 
Michel van B

Michel van B

29/12/2009 10:41:00
Quote Anchor link
nee dat klopt. Ik ben ook vast dingen aan het maken voor volgend jaar.
De enquete moet begin volgend jaar verstuurd worden en dan krijg ik ook pas de emailadressen en vragen ;)
 
- Ariën  -
Beheerder

- Ariën -

29/12/2009 10:43:00
Quote Anchor link
Anders knal je er toch wat testmailadressen neer? Het is toch maar voor testdoeleinden, omdat het nog in aanbouw is.

Dus maak wal grapigge mail-aliassen aan en gaan met die banaan.
Gewijzigd op 01/01/1970 01:00:00 door - Ariën -
 
Michel van B

Michel van B

29/12/2009 10:48:00
Quote Anchor link
haha jah dat kan ook wel is geen probleem ik kan ook mijn eigen nemen.
maar ik zit echt met het probleem dat ik er niet veel van snap.

Maar zoals mijn vorige post: ik moet dus de e-mailadressen opslaan en er een unieke string aan geven. Als ik dit zou doen kan ik dus ook gewoon zelf een naam meegeven?
 
- Ariën  -
Beheerder

- Ariën -

29/12/2009 10:49:00
Quote Anchor link
Kan ook, iets wat de anderen neit makkelijk kunnen raden. Daarvoor is de rand-functie nou handig.
 
Michel van B

Michel van B

29/12/2009 10:51:00
Quote Anchor link
ja das waar.
ok dus ik ga nu even om te testen mijn emailadres in de database gooien met een "unieke" naam. Zou je me dan wel even kunnen vertellen hoe ik de link ga maken die ik in de mail meestuur?
 
Pepijn

Pepijn

29/12/2009 10:57:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<a href=enquete.php?uid=jeuniekeid>klik</a>


Vervolgens doe je
"SELECT uid, mail, ingevuld FROM tabel WHERE mail='".$mail."' AND uniekeid='".$_GET['uid']."' AND ingevuld=0";

if(mysql_num_rows() == 0) {

echo 'ongeldig';
}
else {
echo 'enquete';
}

EDIT:
script is nu wel gevoelig voor mysql injection
Gewijzigd op 01/01/1970 01:00:00 door Pepijn
 
- Ariën  -
Beheerder

- Ariën -

29/12/2009 10:58:00
Quote Anchor link
Dat had ik al uitgelegd. De rand-functie.

$randomcode = rand(1000,9999);

En dan kanje $randomcode gebruiken in je mail.
 
Niels K

Niels K

29/12/2009 10:59:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
function create_regcode()
{

    
    return (md5(microtime() .rand(10000, 32000)));
    
}

?>


EDIT

om in de database op te slaan doe je zoiets..

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

    $code
= create_regcode();

        $Query_insert = mysql_query("INSERT INTO tabel (emailadres, ip, code) VALUES ('".mysql_real_escape_string($_POST['email'])."', '".mysql_real_escape_string($_SERVER['REMOTE_ADDR'])."', '".mysql_real_escape_string($code)."')");
        
            if($Query_insert)
            {

            
                # hier mailen
            
            
            }
            else
            {
            
                echo 'Error in query: '.mysql_error();
            
            }

        

?>
Gewijzigd op 01/01/1970 01:00:00 door Niels K
 
- Ariën  -
Beheerder

- Ariën -

29/12/2009 11:04:00
Quote Anchor link
Ook dat is een mogelijkheid wat niels zegt.
Met create_regcode(), krijg je een 32-caracter lange code.
 
Niels K

Niels K

29/12/2009 11:06:00
Quote Anchor link
@Aar

O sorry ik zag niet dat je al gepost had:P
 
Michel van B

Michel van B

29/12/2009 11:29:00
Quote Anchor link
@ pepijn
ik krijg als foutmelding
Warning: Wrong parameter count for mysql_num_rows() in /usr/home/xxx/domains/xxx.xx/public_html/enquete/formulier.php on line 23

line 23 = if(mysql_num_rows() == 0) {

@Niels
Thnx maar ga eerst even dit van Aar proberen
 
- Ariën  -
Beheerder

- Ariën -

29/12/2009 12:07:00
Quote Anchor link
Er moet ook een resource (mysql_query) in die mysql_num_rows() staan he ;-)

Zie php.net/mysql_num_rows
 
Michel van B

Michel van B

29/12/2009 12:16:00
Quote Anchor link
dat dacht ik ook inderdaad en heb daarna ook het volgende geprobeerd

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$sql
= "SELECT uid, mail, ingevuld FROM users WHERE mail='".$mail."' AND uniekeid='".$_GET['uid']."' AND ingevuld=0";

if(mysql_num_rows($sql) == 0) {
?>


en ook met

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$sql
= "SELECT uid, mail, ingevuld FROM users WHERE mail='".$mail."' AND uniekeid='".$_GET['uid']."' AND ingevuld=0";
$result = mysql_query($sql);

if(mysql_num_rows($result) == 0) {

echo 'ongeldig';
}

else {
echo 'enquete';
}

?>


Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /usr/home/paarsburo/domains/besidespurple.nl/public_html/enquete/formulier.php on line 24

line24 = if(mysql_num_rows($result) == 0) {

Ongetwijfeld doe ik iets fout maar wat?
Gewijzigd op 01/01/1970 01:00:00 door Michel van B
 
- Ariën  -
Beheerder

- Ariën -

29/12/2009 13:51:00
Quote Anchor link
Foutafhandeling...
Wat PHP nu zegt is niets meer dan: "jammer, het lukt niet...".
Daarom heb ik een if/else-statement aangemaakt waarmee die kijkt of de query gelukt is. Zo ja, ga dan door naar het kijken of de enquete bestaat en nog niet ingevuld is (ingevuld=0). Zo nee, laat dan met mysql_error() zien wat er fout ging.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$sql
= "SELECT uid, mail, ingevuld FROM users WHERE mail='".$mail."' AND uniekeid='".mysql_real_escape_string($_GET['uid'])."' AND ingevuld=0";
$result = mysql_query($sql);
if($result) {
 if(mysql_num_rows($result) == 0) {
  echo 'Enquete bestaat niet of hij is al ingevuld.';
  }
else {
  echo 'Hier komt je enquete';
  }
}
else {
echo "Fout in je query: ".mysql_error();
}

?>
Gewijzigd op 01/01/1970 01:00:00 door - Ariën -
 
Michel van B

Michel van B

29/12/2009 14:05:00
Quote Anchor link
Allright ;)
top bedankt.
euhm.. even de situatie.
In de database staat een email adres, een uid en de ingevuld staat op 0

ik heb de link als volgt
<a href=enquete.php?uid=1234>klik</a>

in de database staat een uid met 1234. (moet ik deze nu bij iedereen aangeven)

als ik op de link klik uit me mail dan krijg ik op de website hetvolgende:

Enquete bestaat niet of hij is al ingevuld.

Hoe kom ik er nou achter of iemand het al ingevult heeft of niet en hoe ziet php/mijn server dit?
 
- Ariën  -
Beheerder

- Ariën -

29/12/2009 14:07:00
Quote Anchor link
Laat even alle nodige code zien die relevant is, en hoe je URL eruit zien.
Want waar komt $mail vandaan?

Quote:
Hoe kom ik er nou achter of iemand het al ingevult heeft of niet en hoe ziet php/mijn server dit?

Dat doet die code, zie mysql_num_rows
Gewijzigd op 01/01/1970 01:00:00 door - Ariën -
 
Michel van B

Michel van B

29/12/2009 14:19:00
Quote Anchor link
codes

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
<?php

$host
="localhost"; // Host name
$username="xxx_xxx"; // Mysql username
$password="xxx"; // Mysql password
$db_name="xxx_xxx"; // Database name
$tbl_name="users"; // Table name

// Connect to server and select databse.

mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

$sql = "SELECT uid, mail, ingevuld FROM users WHERE mail='".$mail."' AND uid='".mysql_real_escape_string($_GET['uid'])."' AND ingevuld=0";
$result = mysql_query($sql);
if($result) {
 if(mysql_num_rows($result) == 0) {
  echo 'Enquete bestaat niet of hij is al ingevuld.';
  }
else {
  echo 'Hier komt je enquete';
  }
}
else {
echo "Fout in je query: ".mysql_error();
}

?>


Ik zat me ook al af te vragen waar die vandaan kwam maar dacht ik snap het niet helemaal het zal wel (is iets voor later)
is het niet logischer als het mail='".mysql_real_escape_string($_GET['mail'])."'
zou zijn want hij moet uit de database opgehaald worden

Ik snap nog niet helemaal hoe dit hele gebeuren werkt hoor
 
- Ariën  -
Beheerder

- Ariën -

29/12/2009 14:37:00
Quote Anchor link
$mail wordt nergens aangemaakt.
Kijk maar eens als je $sql echo'ed.
Komt die uit de URL, (net als het 'uid')? Gebruik $_GET['mail'] in je $sql.
Gewijzigd op 01/01/1970 01:00:00 door - Ariën -
 

Pagina: « vorige 1 2 3 volgende »



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.