Mail naar sms via mollie probleempje

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Sam Koster

Sam Koster

25/11/2008 00:16:00
Quote Anchor link
Hoi allemaal. Hier een simpel en raar probleempje.

Via mollie kun je sms bundels kopen, om zodoende via mail een smsje te sturen, dus van mail naar sms.
Nu heb ik een simpel scriptje gemaakt (gedeeltelijk gevonden op internet, gedeeltelijk gescript), maar ik stuit op 2 rare fouten.

1. Hij stuurt het mailtje (smsje dus) 2 of 3 keer
2. Hij telt geen click voor de keren dat reclame word laten zien in mailtje (smsje).

Hier de code zover:

verstuur.php:
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
<form action="send.php" onSubmit="return checkData()" NAME="Sms" name="formulier">
Eigen 06 nummer:<br>
<input name="eigennummer" type="text" id="eigennummer"><br>
06 ontvanger:<br>
<input name="nummer" type="text" id="nummer"><br>
Bericht:<br>
<font size="1" face="arial, helvetica, sans-serif"> ( Maximaal 120 tekens. )<br>
<textarea name="bericht" id="bericht" wrap=physical cols=28 rows=4 onKeyDown="textCounter(this.form.bericht,this.form.remLen,120);" onKeyUp="textCounter(this.form.bericht,this.form.remLen,120);"></textarea>
<br>
<input readonly type=text name=remLen size=3 maxlength=3 value="120"> tekens over.</font>
<br>
<input type="submit" name="Submit" value="Verzenden" name="knop">
<input type="reset" name="Submit2" value="Wissen" name="knop">
</form>


send.php
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
<?php
//Mail naar sms gedeelte
$recipient=("[email protected]");
$subject="gebruikersnaam=---&wachtwoord=---&afzender=$eigennummer";
$content= $bericht;

//Random reclame scripting
$sql = "SELECT * FROM reclame ORDER BY RAND() LIMIT 0,1";
$res = mysql_query($sql);
$reclame = mysql_fetch_array($res);

$rec = $reclame['reclame'];
$id = $reclame['id'];

mysql_query("UPDATE reclame SET clicks = clicks+1 WHERE ID = $id") or die(mysql_error());

mail("$recipient", "$subject", "$bericht $rec");

echo "<span>Sms succesvol verzonden!<br><a href=\"verstuur.php\">Stuur er nog eentje</a></span>";
?>


SQL voor reclame:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
CREATE TABLE `reclame` (
  `id` int(10) NOT NULL auto_increment,
  `reclame` varchar(250) NOT NULL default '',
  `clicks` varchar(250) NOT NULL default '0',
  PRIMARY KEY  (`id`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;

INSERT INTO `reclame` (`id`, `reclame`, `clicks`) VALUES
(1, '-- verzonden via blabla --', '0');


De includes staan netjes erboven, -- betekend dat ik het vanwege privacy etc even heb gecencureerd.

Kan iemand uitvinden wat er fout is in dit script?

Groeten, Sam
 
PHP hulp

PHP hulp

22/11/2024 05:53:26
 
- SanThe -

- SanThe -

25/11/2008 00:29:00
Quote Anchor link
Je formulier heeft 2 keer 'name=...'.
En een VARCHAR is tekst en kan dus niet (op)tellen.

Edit: En verder neem je aan dat alles lukt. Dat kan je beter checken => Foutafhandeling.
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
 
Sam Koster

Sam Koster

25/11/2008 00:30:00
Quote Anchor link
int werkt dan wel?
 
- SanThe -

- SanThe -

25/11/2008 00:32:00
Quote Anchor link
INT is voor integers (hele getallen)
 
Sam Koster

Sam Koster

25/11/2008 00:35:00
Quote Anchor link
Owkee, count probleem is nu opgelost (dank je SanThe), nu het probleem van meerdere keren verzenden.

Gehele verstuur.php
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
<SCRIPT>
<!--
function checkData()

{
var correct = true
if (document.Sms.nummer.value == "") {correct = false; alert("Geef aub het nummer in!")}
if (document.Sms.eigennummer.value == "") {correct = false; alert("Geef aub het nummer in!")}
if (document.Sms.bericht.value == "") {correct = false; alert("Geef aub een bericht in")}

if (correct){alert("Het smsje word nu verzonden. Een moment geduld a.u.b")}
return correct }

//-->
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript">
<!--
function textCounter(field, countfield, maxlimit) {
if (field.value.length > maxlimit) // if too long...trim it!
field.value = field.value.substring(0, maxlimit);
// otherwise, update 'characters left' counter
else
countfield.value = maxlimit - field.value.length;
}
//-->
</script>
<div id="content">
<h2><img src="images/title_video_games.jpg" width="450" height="1" /></h2>
<div class="contentbox">
<span><b>Vul alle velden in om succesvol een smsje te versturen.</b></span><br />
<form action="send.php" onSubmit="return checkData()" NAME="Sms" name="formulier">
Eigen 06 nummer:<br>
<input name="eigennummer" type="text" id="eigennummer"><br>
06 ontvanger:<br>
<input name="nummer" type="text" id="nummer"><br>
Bericht:<br>
<font size="1" face="arial, helvetica, sans-serif"> ( Maximaal 120 tekens. )<br>
<textarea name="bericht" id="bericht" wrap=physical cols=28 rows=4 onKeyDown="textCounter(this.form.bericht,this.form.remLen,120);" onKeyUp="textCounter(this.form.bericht,this.form.remLen,120);"></textarea>
<br>
<input readonly type=text name=remLen size=3 maxlength=3 value="120"> tekens over.</font>
<br>
<input type="submit" name="Submit" value="Verzenden">
<input type="reset" name="Submit2" value="Wissen">
</form>
</div>


ik heb die 2de naam= uit de submit knoppen verwijderd, hij verzond hem zonet nog steeds 2 keer, is ook 2 keer bij de clics opgeteld.
 
- SanThe -

- SanThe -

25/11/2008 00:40:00
Quote Anchor link
SanThe schreef op 25.11.2008 00:29:
Je formulier heeft 2 keer 'name=...'.

Edit: En verder neem je aan dat alles lukt. Dat kan je beter checken => Foutafhandeling.

Met formulier bedoel ik <form NAME="Sms" name="formulier">.
Dat is 2 keer name=....
 
Sam Koster

Sam Koster

25/11/2008 00:42:00
Quote Anchor link
Aangepast, dit is het nu:

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
<SCRIPT>
<!--
function checkData()

{
var correct = true
if (document.formulier.nummer.value == "") {correct = false; alert("Geef aub het nummer in!")}
if (document.formulier.eigennummer.value == "") {correct = false; alert("Geef aub het nummer in!")}
if (document.formulier.bericht.value == "") {correct = false; alert("Geef aub een bericht in")}

if (correct){alert("Het smsje word nu verzonden. Een moment geduld a.u.b")}
return correct }

function textCounter(field, countfield, maxlimit) {
if (field.value.length > maxlimit) // if too long...trim it!
field.value = field.value.substring(0, maxlimit);
// otherwise, update 'characters left' counter
else
countfield.value = maxlimit - field.value.length;
}
//-->
</script>
<div id="content">
<h2><img src="images/title_video_games.jpg" width="450" height="1" /></h2>
<div class="contentbox">
<span><b>Vul alle velden in om succesvol een smsje te versturen.</b></span><br />
<form action="send.php" onSubmit="return checkData()" name="formulier">
Eigen 06 nummer:<br>
<input name="eigennummer" type="text" id="eigennummer"><br>
06 ontvanger:<br>
<input name="nummer" type="text" id="nummer"><br>
Bericht:<br>
<font size="1" face="arial, helvetica, sans-serif"> ( Maximaal 120 tekens. )<br>
<textarea name="bericht" id="bericht" wrap=physical cols=28 rows=4 onKeyDown="textCounter(this.form.bericht,this.form.remLen,120);" onKeyUp="textCounter(this.form.bericht,this.form.remLen,120);"></textarea>
<br>
<input readonly type=text name=remLen size=3 maxlength=3 value="120"> tekens over.</font>
<br>
<input type="submit" name="Submit" value="Verzenden">
<input type="reset" name="Submit2" value="Wissen">
</form>
</div>


3 smsjes retour
 
- SanThe -

- SanThe -

25/11/2008 00:50:00
Quote Anchor link
Edit: Zit het niet in een loop?
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
 
Sam Koster

Sam Koster

25/11/2008 00:57:00
Quote Anchor link
edit: zat ook al te kijken, kan het niet uit het script halen. en dan maar 2 of 3 keer (random) lijkt het me toch vreemd...


_____________
Geeft niet, iig bedankt voor de hulp. Ik heb zelf nog wat geprutst, andere controlle e.d erop gezet (in php, op de send.php pagina, mocht niet baten helaas), en ik houd er mee op voor vandaag.

Als iemand nog iedeen heeft, of een ander mail script wat wel voor 200% werkt en makkelijk is te implementeren voor dit idee (dus subject code's, telefoon nummers e.d), let me know:)
Gewijzigd op 01/01/1970 01:00:00 door Sam Koster
 
Ik ben weg

ik ben weg

25/11/2008 07:30:00
Quote Anchor link
In de mail functie, staat ergens dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
"$bericht


dat moet denk ik dit zijn:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
"$bericht"
 
Arjan Kapteijn

Arjan Kapteijn

25/11/2008 09:35:00
Quote Anchor link
In plaats van email kan je beter hun API aanspreken, dan heb je teminsten een respons terug of het verzenden wel of niet gelukt is. Werkt ook eenvoudiger als je het aan mij vraagt...
 
Sam Koster

Sam Koster

25/11/2008 10:30:00
Quote Anchor link
JesseSar schreef op 25.11.2008 07:30:
In de mail functie, staat ergens dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
"$bericht


dat moet denk ik dit zijn:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
"$bericht"


als je goed ziet, staat er vlak achter $bericht nog een code, $rec. Deze is nodig voor de reclame. dus na bericht haalt hij een random rij uit de database reclame en zet die daarop.
 



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.