Avatar billede fire-fox Nybegynder
12. februar 2008 - 15:07 Der er 29 kommentarer og
1 løsning

sms system sender et tilfældigt password

Hey all..

jeg er ved at lave et request system til en online radio station, og der vil vi have en VIP section. hvor man så kan donere x antal kr. til radioen, og tilgengæld får man så en sms tilbage med en tilfældig kode som så kan bruges til at logge ind med i vip section...

så mit spørgsmål lyder:

Hvordan kan man lave sådan et system så den udsender sådan en kode. vores sms udbyder er comsms...

points gives til vedkommen der kan levere et brugbart løsning :)
Avatar billede jakobdo Ekspert
12. februar 2008 - 15:28 #1
Når der modtages en SMS, så genereres et random kodeord, f.eks. via:

function Random_Password($length) {
    $possible_charactors = "abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    $string = "";
    while(strlen($string)<$length) {
        $string .= substr($possible_charactors, rand()%(strlen($possible_charactors))),1);
    }
    return($string);
}
echo Random_Password(8);

Smid kodeord i en database og tjek op mod den database, når brugeren skriver din kode.
Avatar billede fire-fox Nybegynder
12. februar 2008 - 15:38 #2
den skal jeg lige have en gang mere :D
- Smid kodeord i en database og tjek op mod den database, når brugeren skriver din kode.

hvordan vil brugerne modtage en tilfældig kode... sp koden evt også kan sendes med i smsen
Avatar billede jakobdo Ekspert
12. februar 2008 - 15:39 #3
Jeg sender en sms til et system.
Systemet opretter en random kode.
Koden gemmes i en database.
Koden sendes til brugeren i en SMS.
Brugeren logger ind på jeres VIP side.
Kodeord tjekkes op mod databasen.
Avatar billede fire-fox Nybegynder
12. februar 2008 - 15:44 #4
ja okay lyder iorden... nu er jeg ikke verdensmester er det evt. noget vi kunne arbejde med, så det kommer til at virke måske...

kunne vel starte med at smide overstående kode i en payment.php ikke :) og upload den til side. så kunne jeg vel passende også lave en tabel i databasen der hedder passwords og smide en masse random koder ind ikke ? skal det være md5 hash eller varchar eller :)
Avatar billede jakobdo Ekspert
12. februar 2008 - 16:00 #5
Koden kan du gemme i varchar(32)
Brug md5 + salt

$salt = 'jakobdo';
$kode = md5($random_kode . $salt);
Avatar billede fire-fox Nybegynder
12. februar 2008 - 16:03 #6
starter da lige med at lave en masse koder :)
Avatar billede fire-fox Nybegynder
12. februar 2008 - 16:22 #7
så har jeg genereret en masse tilfældige koder :)
Avatar billede fire-fox Nybegynder
12. februar 2008 - 17:57 #8
jeg er ikke helt sikker på jeg er med her men så må i rette mig :)

1. jeg har oprettet nogen password i databasen med varchar(32) og har uploaded overstående script fra jakobdo til serveren med navnet payment.php. og så er jeg usikker på hvad jeg skal derefter, men jeg tror jeg skal have lavet et link mellem scriptet og databasen så de kan snakke sammen om password, men hvordan det lige skal gøre ved jeg desværre ikke... og så skal jeg også have lavet så sms systemet udsender "random" password :S
Avatar billede jakobdo Ekspert
12. februar 2008 - 18:37 #9
Du skal ikke oprette koderne, de skal først oprette når en SMS/betaling modtages.
Avatar billede fire-fox Nybegynder
13. februar 2008 - 00:55 #10
min fejl, jeg sletter dem igen
Avatar billede fire-fox Nybegynder
13. februar 2008 - 02:46 #11
så er de slettet :)
Avatar billede jakobdo Ekspert
13. februar 2008 - 08:23 #12
Hvor langt et du nået? :o)
Avatar billede fire-fox Nybegynder
13. februar 2008 - 12:40 #13
jeg er nået så langt de passwords jeg lavede i databasen er slettet... hva der så skal ske aner jeg ikke lol
Avatar billede jakobdo Ekspert
14. februar 2008 - 11:05 #14
Har du et system som kan registrere når der modtages en SMS ?
Avatar billede fire-fox Nybegynder
14. februar 2008 - 12:33 #15
nope, det eneste sms system jeg har er det hos comsms... :S
Avatar billede jakobdo Ekspert
14. februar 2008 - 12:44 #16
Du skal jo have et system som kan registrere modtagelse af en SMS.
Ellers kommer du jo ikke langt med dit system.
Avatar billede fire-fox Nybegynder
14. februar 2008 - 13:07 #17
øhhh ja :) derfor jeg skriver herinde fniz :)
Avatar billede fire-fox Nybegynder
14. februar 2008 - 13:28 #18
tror jeg har fundet en løsning

den skal nok lige omskrives lidt, men det var noget jeg fandt på en hjemmeside :)

så skal comsms bare lige rettes lidt der er nemlig et "sms betalingssystem" så skal den bare linke til takesms.php :)

men hvordan den lige skal rettes til ved jeg ikke helt for jeg har ikke $curuser nogen steder. det eneste tabel jeg har er "passwords"

SQL:
ALTER TABLE `passwords` ADD `cell` varchar(255) NOT NULL default '';

SMS1.php
<?
  $curre = $CURUSER['username'];
  $cell = $_POST['cell'];

echo("<h2>SMS donation Step 1/3</h2>");

?>
<form action="<?=$_SERVER['PHP_SELF']?>" method="POST">
What cellphone number will you donate from?<br>
OBS! Type your cellphone number below. See the example.<br><br>
<input type="text" name="cell"><br>
<i>example: 0701234567</i>
<br><br>
<input type="submit" name="submit" value="Continue">
</form>

<?

if($_POST['submit'] && $_POST['cell']){
  mysql_query("UPDATE users SET cell = '$cell' WHERE username = '$curre'");
  header("Location: sms2.php");
  }
?>

SMS2.php
<?
echo("<h2>SMS donation Step 2/3</h2><br>");
echo("Send a SMS to 1919 with the following information: ");
echo("<b>");
echo("SILVTORR"); // YOUR PREFIX HERE
echo("</b><br><br>");
?>
<form action="<?=$_SERVER['PHP_SELF']?>" method="GET">
<input type="submit" name="submit" value="Continue">
</form>

<?

if($_GET['submit']){
header("Location: sms3.php");
}
?>

SMS3.php
<?
echo("<h2>SMS donation Step 3/3</h2>");


echo("Your donation should now be complete!<br> You will notice this with a star beside your nickname!<br><br> The staff at silvertorrents.org are graceful for your donation and are hoping that you will like us.");
?>

takesms.php
<?php
$nr = $_REQUEST['nr']; // Cellphone number donation came from
$donated = $_REQUEST['tariff']; // How much that have been donated
$curre = $CURUSER['username'];
$qry = "UPDATE users SET donated = '$donated' WHERE cell = '$nr'"; // Remove this line if you dont have the donation mod or the donated column in your sql
$qry2 = "UPDATE users set donor = 'yes' WHERE cell = '$nr'";
mysql_query($qry); // Remove this line if you dont have the donation mod or the donated column in your sql
mysql_query($qry2);

echo("Thank you for your donation! You are helping us to continue to run our activity"); //This is the SMS to the cellphone
?>
Avatar billede jakobdo Ekspert
14. februar 2008 - 13:36 #19
Det er jo blot selve afsendelse af en SMS til et nummer hos dig.
Men der er ingen kontrol i om SMS'en rent faktisk modtages bagved.
Avatar billede fire-fox Nybegynder
14. februar 2008 - 13:40 #20
kan man ikke strikke det ind i :) var lidt så glad fordi jeg havde fundet nogen. men man skal jo sende en sms til "1919" (comsms) så linker den til takesms.php som så går ind og generere en kode det er sådan jeg tænker den vil fungere :)
Avatar billede jakobdo Ekspert
14. februar 2008 - 13:44 #21
Nu kender jeg ikke comsms, hvordan virker det?
Avatar billede fire-fox Nybegynder
14. februar 2008 - 13:49 #22
Man kan lave et "keyword" lad og sige "VIP" og tilknytte den en "sms betalingssystem" der er mange andre også så som sms 2 email etc etc... men så i "sms betalingssystem" kan man så smide en URL ind i dette tilfælde skal det jo så være http://aliasfm.net/takesms.php og i info boksen står der

Din betaling er nu registreret, gå til http://aliasfm.net/takesms.php for at benytte din kode. Koden er: %kode%
Avatar billede jakobdo Ekspert
14. februar 2008 - 14:04 #23
Ahh, så bliver det nok noget nemmere ja.
Så skal jeg lige tænke systemet lidt igennem igen. :o)
Avatar billede fire-fox Nybegynder
14. februar 2008 - 14:10 #24
bare iorden :)
Avatar billede fire-fox Nybegynder
14. februar 2008 - 22:07 #25
hva så jakobbo, sveder du helt over at tænke over det :P

har også brugt tid på det men er ikke bleven klogere...
Avatar billede jakobdo Ekspert
15. februar 2008 - 20:46 #26
Ja, nu har jeg læst lidt på dokumentationen.

Du opsætter hos comsms.dk følgende:

Keyword, f.eks. 1919 VIP_RADIO (som jeg forstår det)
Ligeledes sætter du så: URL f.eks. sms_vip.php
Igen, som jeg forstår det, så modtager den nogle GET parametre.
Blandt andet MOBIL-nummer som sms'en afsendes fra.
Den SMS skal du så koble sammen med et brugernavn.
Hvis brugeren kobler sit brugernavn og mobil nummer sammen, så kan det faktisk laves, så når de sender en SMS, så bliver de automatisk opgraderet til VIP i 24 timer, eller hvad dit koncept nu er.
Avatar billede jakobdo Ekspert
15. februar 2008 - 20:46 #27
Kig f.eks. lidt på denne side: https://www.comsms.dk/1919_HTTP_Forward_2.0.pdf -> Side 4
Avatar billede fire-fox Nybegynder
15. februar 2008 - 22:14 #28
Heysan. ja jeg tror ikke du er helt gal på den, men det er lige måden det skal laves på jeg overhovedet slet ikke forstår :/
Avatar billede jakobdo Ekspert
17. februar 2008 - 17:36 #29
Jeg er slet ikke gal på den, men kan snart ikke komme det nærmere, da jeg ikke har adgang til comsms osv...
Så du må selv prøve at tage det bid for bid.
Avatar billede fire-fox Nybegynder
09. december 2009 - 17:53 #30
Lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester