Archive for PHP

Kako poslati masovnu e-pošte koristeći PHP

Posted in PHP po ShortLikeAFox na 19 Rujan 2008

Tako se želite udaljiti iz masovnu poruku ili želite napraviti program koji može brzo biti promijenjen kako bi se više masovno slanje e-pošte. PHP to lako. U ovom primjeru ja ću pretpostaviti da imate listu adresa e-pošte koji želite poslati neki e-mail na. Ću pretpostaviti da ste ovaj popis u skladu baze podataka, ali taj broj mogao lako se podešava za korištenje bilo hardcoded adresu e-pošte popisa ili popisa iz drugog izvora.

<? PHP

/ / Prvi spojiti na bazu podataka koja sadrži podatke o adresi e-pošte.
$ korisnik = "Korisnik";
$ host = "HOST";
$ lozinka = "Password";
$ baza = "BAZA PODATAKA";

( "Couldn’t connect to server" ); $ cxn = mysql_connect ($ host, $ korisnik, $ lozinka) ili umrijeti ( "Ne mogu se spojiti na poslužitelj");
mysql_select_db ($ baza);

/ / Upit tablice koji sadrži adrese e-pošte. Ispunite vlastite tablice ime ovdje ...
$ upit = "SELECT * FROM theEmailAddresses";
( mysql_error ($cxn)); $ rezultat = mysql_query ($ upit, $ cxn) ili umrijeti (mysql_error ($ cxn));
$ nrows = mysql_num_rows ($ rezultat);

/ / Tko je pošiljatelj će biti označeni kao. Možete staviti što želite ovdje, ali zapravo nije baš etički da se e-mail adresu da ne kontrole ovdje.
$ s = "From: me@mydomain.com";
/ / Standard e-mail naslov
$ subject = "Što je novo na mydomain.com";
/ / Poruka
$ poruka = "Pozdrav cijenjena prijatelj,

Mi sada prodati kolačiće na mydomain.com. Svakako provjerite to!
S poštovanjem,
mi ";

/ / Smo već queried sve adrese e-pošte. Sada mi samo trebate poslati na e-mail
0 ; $i < $nrows; $i ++ ){ for ($ i = 0; $ i <$ nrows; $ i + +) (

$ red = mysql_fetch_assoc ($ rezultat);
ekstrakt ($ row);
/ / Replace $ e-mail s obzira na kolone e-mail adresa je pozvao
$ do = "$ e-mail";
/ / Pošalji e-pošte za svaku e-poruku u bazu podataka
if (mail ($ do, $ subject, $ poruka, $ s)) (

/ / Ispis ime e-poruke koje su uspješno poslana. Koristim ovo samo kako bi bili sigurni da program nije smrznuta. U teoriji bi trebao biti njihov stalni tok naziva se tiskaju>

); echo ( "$ za <br/>");

)

)




?>

To malo traje kod prednost od php mail () funkcija. Ovo je vrlo snažan i jednostavan za korištenje funkcija. Ne zaboravite da s velikom moći dolazi velika odgovornost. Pokušajte ne koristiti ovu funkciju za zlo.

Kako prepoznati gdje Vaši posjetitelji su geografski koristeći PHP

Posted in kruška, php po ShortLikeAFox na 13 Rujan 2008

Ako imate web sajt i želite reći gdje Vaši korisnici dolaze iz zemljopisno PHP i kruška čine ovo moguće. Za uključivanje gost IP u fizičku lokaciju prva stvar koju ćeš da trebate učiniti je da se pobrinete za to imate Net_Geo kruška modul. Ako nemate Net_Geo kruška modula, koje ćete morati koristiti kruška Package Manager za to stekli.

Ako ne mislite da imate pristup kruška zbog Vašeg hosting paketa, check out ove objašnjenje o tome kako instalirati kruška na račun da ne dopušta pristup po defaultu. Pisano je s GoDaddy dijeli račune u vidu, ali trebao bi raditi za većinu hosting pakete koji ne dolaze s kruška postavljanje.

Nakon što ste instalirali paket Net_Geo, traje samo par linija koda kako bi stekli geografski podaci:

<? PHP

); require_once ( "Neto / Geo.php);
]; $ ip = $ _SERVER [ 'REMOTE_ADDR'];
/ / $ ip = "64.246.30.37";
$ firstNetGeo = novi Net_Geo ();
$ $ = GEOdata firstNetGeo-> getRecord ($ ip);

?>

($ip); ?> <br/> IP: <? Php echo ($ ip);?> <br/>
($geoData[ 'LAT' ]); ?> <br/> Širina: <? Php echo ($ GEOdata [ 'LAT']);?> <br/>
($geoData[ 'LONG' ]); ?> Longitude: <? Php echo ($ GEOdata [ 'DUGO']);?>
<br/>
($geoData[ 'COUNTRY' ]); ?> <br/> Država: <? Php echo ($ GEOdata [ 'Country']);?> <br/>
($geoData[ 'STATE' ]); ?> <br/> Država: <? Php echo ($ GEOdata [ 'state']);?> <br/>
($geoData[ 'CITY' ]); ?> <br/> Grad: <? Php echo ($ GEOdata [ 'GRADA']);?> <br/>

Kodeks na radu:

IP: 74.125.75.19

Zemljopisna širina: 33.98

Longitude: -118,45

Zemlja: SAD

Država: California

Grad: MARINA DEL REY

Kako dijeliti jednu sliku u više slike koristeći PHP

Posted in funkcija, php po ShortLikeAFox na 26 Kolovoz 2008

Tako želite razbiti jedna velika slika u više manjih slika? Nema problema. Ovaj svibanj izgledaju kao čudan problem, ali postoji više razloga, molim vas želim to učiniti. Možda želite stvoriti vizualni pomična puzzle. Ili možda imate pokrenut jedinstven WordPress tema. Ili možda želite napraviti kolaž nekih vrsta. To stvarno ne pitanje zašto želite Split sliku na manje slike, PHP čini ovaj jednostavan zadatak. Na primjer ispod samo bavi jpegs. Promjena funkcije za rad s drugim vrstama slike ne bi bilo da je teško.

<? PHP
/ / Ova funkcija će Split sliku u jednako velik broj stupaca i redaka.
funkcija split_image ($ number_of_rows, number_of_cols $, $ path_to_image, $ FILE_NAME) (

/ / $ number_of_rows = # redova želite;
/ / $ = # number_of_cols od cols želite
/ / $ path_to_image = put do mape u sliku, nešto ovako: / home / sadržaj / ime / html / popis / učitavanja /
/ / $ FILE_NAME = Ime datoteke na sliku: archery.jpg, itd.

/ / Analizirati put za proširenje
$file_name); $ info = pathinfo ($ path_to_image. $ FILE_NAME);

/ / pobrini se da je riječ o jpeg
($info[ 'extension' ]) == ‘jpg’ ) || ( strtolower ($info[ 'extension' ]) == ‘jpeg’ ) ){ if ((strtolower ($ info [ 'ekstenziju']) == 'jpg') | | (strtolower ($ info [ 'ekstenziju']) == 'jpeg')) (

/ / Učitavanje slike i dobiti veličina slike
); $ source = imagecreatefromjpeg ( "$ (path_to_image) ($ FILE_NAME)");
$ width = imagesx ($ izvor); / / Pronađite širina
visina imagesy = $ ($ izvor); / / Traži visinu
segment_width $ = $ width / $ number_of_cols; / / Određivanje širine od pojedinačnih segmenata
$ $ = segment_height visina / $ number_of_rows; / / Određivanje visine od pojedinačnih segmenata

for ($ sedlo = 0; $ Kol <$ number_of_cols; $ sedlo + +)
(

for ($ redak = 0; $ redak <$ number_of_rows; $ row + +)
(

, $col, $row ); $ fn = sprintf ( "% 02d_ img 02d.jpg%", $ sedlo, $ red);
); //I print the image name here, so that the process shows itself as it runs echo ( "$ fn"); / / ispis na sam naziv slike ovdje, tako da se proces pokazuje kao da radi
$ im = @ imagecreatetruecolor ($ segment_width, $ segment_height);
imagecopyresized ($ IM $ izvor, 0, 0, $ * $ segment_width sedlo, $ red * $ segment_height, segment_width $, $ segment_height, segment_width $, $ segment_height);
$ datoteka = "test.jpg";
/ / Spremanje slike
, 100 )) //The destination will be something like /home/content/c/h/d/images/$fn if (imagejpeg ($ im, "INSERT ODREDIŠTU OVDJE", 100)) / / Odredišni će biti nešto kao / home / sadržaj / c / h / d / images / $ fn

echo ( "je napravio! <br/>");

)

)

)

)

?>

Kako se uključiti funkcioniranje PHP kod u vaš WordPress komentara

Posted in WordPress, php po ShortLikeAFox na 17 Kolovoz 2008

Tako da želite biti u mogućnosti koristiti PHP u vaš WordPress blog postova i stranica. To je bez problema. Samo korištenjem <? Php ... ... ..?> Ce napraviti WordPress ljutiti ako ne instalirate dodatak prvi. Postoji nekoliko plugins tamo koji tvrde da nude ovu mogućnost, ali onaj koji sam našao radi najbolje je Exec-PHP. Da biste počeli koristiti PHP kod, slijedite ove korake:

  1. Preuzmite Exec-PHP
  2. Instalacija je kao da bi bilo koji dodatak (Ovaj link gore i obavijesna datoteka će vas provesti kroz ovo)
  3. Ako trenutno koristite ga, morate isključiti WYSIWYG editor. Da biste to učinili, idite na Korisnici -> Vaš Profil i isključite potvrdni okvir Use vizualnog editora prilikom pisanja kućicu
  4. Započni pisanju php koda kao što ste i inače: <? Php .... Kôd ide ovdje?>

To je sve što je na njemu!

Kako stvoriti i koristiti dinamički imenom varijable s PHP

Posted in PHP po ShortLikeAFox na 17 Kolovoz 2008

Tako želite koristiti dinamičku varijablu imena u kodu. Nema problema. Recimo imate 100 varijabli zove dog0, dog1, dog2, ...., Dog98, dog99. Zašto biste željeli koristiti 100 varijabli kao što je ovaj, umjesto niz je izvan mene, ali nije važan za ovaj primjer. Za određivanje tih varijabli u brzi petlja možete koristiti sljedeće:

0 ; $i < 100 ; $i ++ ){ for ($ i = 0; $ i <100; $ i + +) (

; $ variableName = "$ i pas";
$ $ $ i = variableName; / / postavlja dog1 $ 1, $ dog2 do 2, $ pas 34 - 34, itd ....

)

Sada recimo biste željeli pristupiti svih tih varijabli. Možete koristiti sljedeće:

0 ; $i < 100 ; $i ++ ){ for ($ i = 0; $ i <100; $ i + +) (

; $ variableName = "$ i pas";
echo ( "<br/>");
echo ( "$ variableName:");
echo ($ $ variableName);

)

Ova petlja grafika:

dog0: 0
dog1: 1
dog2: 2
dog3: 3
dog4: 4
dog5: 5
dog6: 6
dog7: 7
dog8: 8

itd ... sve do
dog99: 99

Kako Intergrate ISBN pristup na vaše web stranice koristeći PHP

Posted in PHP po ShortLikeAFox na 12 Kolovoz 2008

ISBN International Standard Book ili brojevi su korisne oznake koje se mogu koristiti kako bi pronašli informacije o pojedinim knjigama. Ako želite integrirati ISBN lookups u vašem web aplikacije PHP čini izvodljiv.

Korak Jedan: ISBNdb.com je je stvorio za API koji omogućava korisnicima od oko web pristup njihovim baza ISBN zapisa. Ovdje je svoje opis API:

ISBNdb.com 's udaljenog pristupa sučelje za programiranje aplikacija (API) je osmišljen kako bi se omogućilo drugih web stranica i samostalne aplikacije koristiti velika zbirka podataka koje su prikupili ISBNdb.com od 2003. Kao od ovaj pisanje, u srpnju 2005, podataka uključuje gotovo knjige 1800000; 3000000 gotovo milijun knjižnica evidencije; blizu milion tema, stotine hiljada autora i izdavača evidencije raščlaniti iz biblioteke podataka; više od 10000000 zapisa o stvarnim i povijesne cijenama.

Da biste koristili ovu API prvo morate registrirati. Registracija traje doslovno sekunda. Nakon toga, morate postaviti na tipku. Tipke omogućuju Vam da izravno pristupiti ISBN baza podataka iz vlastitog koda. Na web stranici ISBNdb.com čini postavljaju ključevi lako.

Korak dva: Sada ste započeli pisanje koda za interakciju s bazom podataka. Zahtjev za ISBN lookup će izgledati otprilike ovako:

$ isbnData = "http://isbndb.com/api/books.xml?access_key=XXXXXX&index1=isbn&value1 = $ isbnQuery";

Vi bi ubacite vaš pristup ključni u mjestu xxxxxx. $ IsbnQuery bi ISBN broj ste zainteresirani rezervirati $ isbnData je XML datoteka. Da biste pristupili ovim podacima koje je potrebno da svoj kod znaju što je se bave. Nešto poput ovoga će raditi:

) ; $ xmlData = @ simplexml_load_file ($ isbnData) ili umrijeti ( "ne učita datoteka");

Sada možete pristupiti varijabli individualnih poziva s otprilike ovako:

]->Title ; $ naslov = $ xmData-> BookList [0] -> BookData [0] -> Naslov;

Ovdje je kompletan radni primjer:

<? PHP

$ Searchquery = "9780684801223", / / ISBN za Ernest Hemingway je starac i more
$ isbnData = "http://isbndb.com/api/books.xml?access_key=XXXXXX&index1=isbn&value1 = $ Searchquery", / / Zapamti zamijeniti s xxxxxx svoj vlastiti pristup ključem
) ; $ xmlData = @ simplexml_load_file ($ isbnData) ili umrijeti ( "ne učita datoteka");
]->Title ; $ naslov = $ xmlData-> BookList [0] -> BookData [0] -> Naslov;
]->AuthorsText ; $ $ = autori xmlData-> BookList [0] -> BookData [0] -> AuthorsText;
]->PublisherText ; $ $ = izdavača xmlData-> BookList [0] -> BookData [0] -> PublisherText;

); echo ( "$ naslov <br/>");
); echo ( "$ autori <br/>");
); echo ( "$ izdavača <br/>");

/ / Ovaj primjer ispisuje:
/ / The starac i more
/ / Ernest Hemingway
/ / New York: Scribner meki fantastika, 1995.

?>

Kako da potvrdite adresu e-pošte koristeći PHP

Posted in PHP ShortLikeAFox od 5. kolovoza, 2008

Tako vam je potrebna potvrda korisnikov e-mail adresu? Nema problema. Ima mnogo razloga da zahtijeva potvrdu e-mail, PHP i omogućuje jednostavno.

E-mail potvrde mogu biti dovršen je ove korake:

  1. Podsjeti korisnik informacija za sve što vam treba od njih (uključujući i njihove e-mail adresu)
  2. Unos ove podatke u bazu podataka
  3. Pošalji e-mail korisniku s posebnim tipku za potvrdu
  4. "Otključaj" podataka u bazu podataka nakon potvrde ključ je ušao.

Kako to učiniti:

<? PHP

/ / Prvo, neka se spojiti na bazu podataka

$ korisničko_ime = "dbUserName";
$ host = "dbHost";
$ my_password = "dbPassword";
$ db_name = "dbName";

/ / Spajanje na server i odaberite bazu podataka.
, "$user_name" , "$my_password" ) or die ( "cannot connect to server" ); mysql_connect ( "$ host", "$ korisničko_ime", "$ my_password") ili umrijeti ( "ne može spojiti na poslužitelj");
) or die ( "cannot select DB" ); mysql_select_db ( "$ db_name") ili umrijeti ( "ne mogu odabrati DB");

/ / Sljedeći redak u osnovi pita ako korisnik mora imati oblik prikazan. Pročitajte dolje malo ako želite vidjeti gdje se varijable dolaze iz

(@ $_GET [ 'first' ] == "no" ) && ! (@ $_GET [ 'confirm' ] == "yes" ){ if (! (@ $ _GET [ 'prvi'] == "ne") & &! (@ $ _GET [ 'potvrdili'] == "yes") (
/ / Budući da je ovo prva stranica prikaza i bez potvrdnog koda je uključena treba prikazati u obliku za korisnika ispuniti
/ / Ovaj obrazac traje samo jedan argument (korisnikovu e-mail adresu).
?>

method= "post" action= "index.php?first=no" > <form name= "emailConfirmation" method= "post" action= "index.php?first=no">

<TABLE align="center">
<tr>
<td>
type= "text" id= "email" size= "30" /> E-mail: <input name= "email" type= "text" id= "email" size= "30" />
</ td>
</ TR>
<tr>
<td align="center">
name= "Submit" value= "Submit" /> <input type= "submit" name= "Submit" value= "Submit" />
</ td>
</ TR>
</ table>
</ obrazac>

<? PHP

)

/ / ako je obrazac za ispuniti, moramo generirati potvrda, potvrda ubacite i e-pošte korisnika u bazu podataka, te poslati e-mail na adresu e-pošte.
[ 'first' ] == "no" ){ //if the form has been filled out… elseif (@ $ _GET [ 'prvi'] == "ne") (/ / ako je obrazac ispuniti ...

/ / is_valid_email_address nije valjana php funkcija. Umetnite svoju vlastitu adresu e-pošte provjeravanje funkcija ovdje ...
is_valid_email_address( $_POST [ 'email' ])) if (! is_valid_email_address ($ _POST [ 'Email']))

); echo ( "Žao nam je! E-mail adresa koju ste unijeli nije ispravan.");

/ / Ako se pojavi valjanu adresu e-pošte i siguran ...
else (

]); e-mail = $ ($ _POST [ 'Email']);
/ / Izradi potvrdu kod ovdje. To je način na koji sam se odlučio na to, ali ima Bezbroj je načina na koje će raditi.
( rand ())); $ CONFIRMATION_CODE = md5 (uniqid (ivica ()));
/ / Sve je više-manje u redu za upis u bazu podataka i zatim poslati e-mail korisniku
$ upit = "INSERT U emailConfirmationTable (user_email, con_code) vrijednosti ( '$ e-mail', '$ CONFIRMATION_CODE')";
("Config Error 2223 "); $ rezultat = mysql_query ($ upit) ili umrijeti ( "Config Pogreška 2223");
/ / Pošalji e -
$ = $ na e-mail;
$ subject = "Vaša shortlikeafox primjer potvrde", / / Od
$ zaglavlje = "iz: shortlikeafox <info@shortlikeafox.com>";
/ / Vaša poruka
$ poruka = "Vaša Comfirmation vezu! \ r \ n";
$ poruka .= "Klikni na ovaj link kako bi aktivirali svoj korisnički račun \ r \ n";
$ poruka .= "Ova veza s isteći, kad god se osjećam kao čišćenje iz nepotvrđen e-pošte (svaki tjedan ili tako) \ r \ n";
$ poruka .= "http://www.shortlikeafox.com/simple-email-confirmation-example/index.php?confirm=yes&confirmCode = $ CONFIRMATION_CODE \ r \ n";
$ poslanapošta = mail ($ do, $ subject, $ poruka, $ zaglavlje);

); echo ( "Vaš e-pošte s potvrdom je poslana!");

)

)
/ / Ako je korisnik našao ovu skriptu iz vezu u njegovu e-mail, potvrdite ga ....
[ 'confirm' ] == "yes" ){ elseif (@ $ _GET [ 'potvrdili'] == "yes") (
/ / Neka confirmCode relativno sigurno korištenje

[ 'confirmCode' ]); $ confirmCode = mysql_real_escape_string (@ $ _GET [ 'confirmCode']);

$ upit = "SELECT * FROM emailConfirmationTable GDJE con_code = '$ confirmCode' I is_confirmed ='0 ';
( "Error 234234" ); $ rezultat = mysql_query ($ upit) ili umrijeti ( "Pogreška 234234");
$ nrows = mysql_num_rows ($ rezultat);
1){ if ($ nrows == 1) (
$ upit = "UPDATE emailConfirmationTable SET is_confirmed ='1 'gdje con_code =' $ confirmCode '";
( "Config Error 222231231233 " ); $ rezultat = mysql_query ($ upit) ili umrijeti ( "Config 222231231233 Greška");
if ($ rezultat)
); echo ( "EMAIL POTVRĐUJE!");

)
drugi

); echo ( "Nije moguće potvrditi email");

)

?>

Vrlo je važno zapamtiti da biste provjerili valjanost informacija koje korisnik unosi u bilo kojem obliku. Nisam uključiti funkciju za provjeru ispravnosti e-mail adrese gore, ali dobro mjesto za početak je Kalifornija Henderson's e-mail validacija funkcija pronaći ovdje.

Ako želite vidjeti ovu skriptu u akciju, možete to učiniti ovdje.

Kako ručno umetanje grupa korisnika u SMF forum koristeći PHP

Posted u SMF (Simple Machine Forum), php po ShortLikeAFox na 30. srpnja 2008

Ovaj Tutorial pretpostavlja da su upoznati s mojim post: kako se ručno Umetni Korisničke u SMF forum Korištenje PHP.

Nedavno sam izazov i suočen sele 800 ili tako bendova iz baze podataka u SMF forum. Suočila sam nekoliko problema prilikom čega je potez da nisam pokriće u prvi post:

  1. Band imena nisu bili zajamčeni biti siguran za znak po znak premjestiti u SMF bazu podataka. Tako je nekakav naziv mijenjanjem funkcija morali biti zaposlen.
  2. The bandovi nemaju lozinke. Tako neki tip lozinku naraštaj mora biti zaposlen.

Koraci ja obilazili registrirati sve od bendova na forum ode malo kao ovaj:

Otvorite Band Database

za svaku (Band) (

Izradi Lozinka

Preimenuj Band sa "sigurno" ime

Grabežljivac i generiranje informacije potrebne za umetanje korisnik

Umetni Band u smf_members

Band Pošalji e-mail s lozinkom

)

Informacije sam imao na raspolaganju bazu podataka iz benda da je korisno uključiti: bandName, bandEmail i bandWebsite

Ovdje je funkcija generiranje zaporke sam koristio (blatently oduzeo totallyphp.co.uk):

createRandomPassword funkcija () (

$ slova = "abcdefghijkmnopqrstuvwxyz023456789";

() * 1000000); srand ((dvokrevetne) microtime () * 1000000);

$ i = 0;

$ pass = ";



a ($ i <= 7) (

33; $ num = ivica ()% 33;

$ tmp = substr ($ slova, $ num, 1);

$ pass = $ pass. $ tmp;

$ i + +;

)

povratak $ pass;

)

Lozinka kreirana ovdje je relativno slab, ali je dovoljno dobar za moje potrebe. Svaka lozinka generiranje funkcija bi raditi ovdje. Izabrao sam ovaj jer bi se lako za članove zapamtiti ako su izabrali da ne promijeniti ga.

Kako to učiniti:

/ / Prvi povezati s bendom baze podataka
$ username = "bandUsername";
$ host = "bandHost";
$ MojaLozinka = "bandPassword";
$ db_name = "bandDatabase";

("cannot connect to server"); mysql_connect ( "$ host", "$ username", "$ MojaLozinka") ili umrijeti ( "ne može spojiti na poslužitelj");
("cannot select DB"); mysql_select_db ( "$ db_name") ili umrijeti ( "ne mogu odabrati DB");

/ / Sada grabežljivac sve od bendova iz baze podataka
$ upit = "SELECT * FROM allBands";
$ bendova = mysql_query ($ upit) ili umrijeti ( "Config 2222b Greška");
$ userRows = mysql_num_rows ($ bendova);

/ / Sada omogućuje spajanje na SMF db
$ host = "smfhost", / / host ime
$ username = "smfuser; / / MySQL korisničko ime
$ MojaLozinka = "smfpassword", / / MySQL password
$ db_name = "smfdatabase", / / Database ime

("cannot connect to server"); mysql_connect ( "$ host", "$ username", "$ MojaLozinka") ili umrijeti ( "ne može spojiti na poslužitelj");
("cannot select DB"); mysql_select_db ( "$ db_name") ili umrijeti ( "ne mogu odabrati DB");

/ / $ vaild_chars će biti niz znakova Dozvoljeno za korisnička imena. Sam odlučio dopustiti samo slova i brojki. Postoje i druge znakove da bi se mogla koristiti da ne bi uzrok problema, ali za stil razloga sam odlučio ići sa samo slova i brojeva
$ valid_chars = "abcdefghijklmnopqrstu vwxyz 0 1 2 3 4 5 6 7 8 9";
$ valid_chars = eksplodirati ( "", $ valid_chars);

/ / Sada trebamo petlja kroz svaki bend

){ for ($ i = 0; $ i <$ userRows; $ i + +) (

($bands)){ if ($ row = mysql_fetch_assoc ($ bendova)) (

/ / Izdvojite band informacije
ekstrakt ($ row);
/ / Stvaranje lozinke za pojas
$ realPassword = createRandomPassword ();
/ / Ja izabrati da se jeka bandname i lozinku kao dio moje ispravljanje pogrešaka i da vas mogu vidjeti kako to radi funkcija
echo ( "$ <br/> bandName - $ realPassword");
newBand $ = "";
/ / Za svako slovo u ime benda ćemo se gledati da li to odgovara važećim znakom od $ valid_chars. Ona to ne reći ćemo odstraniti ga i izrežite benda ime
($bandName); $j ++ ){ for ($ j = 0; $ j <strlen ($ bandName), $ j + +) (

($band[$j])); $ temp = str_replace ($ valid_chars, "X", strtolower ($ band [$ j]));
if ($ temp == "X")

newBand $ = $ newBand. benda $ [$ j];

)
/ / Echo sam novi naziv za istog razloga sam jeka je staro ime i lozinku
echo ( "- $ newBand");
/ / Imamo novi Band ime .... Sada ćemo započeti buliding info trebamo umetnuti u db ...
memberName $ = $ newBand;
$ $ = realname newBand; / / ja postaviti pravo ime i naziv isto član. U bendova može promijeniti ako to žele
emailAddress $ = $ bandEmail;
websiteUrl $ = $ bandWebsite; / / Od imam bendova 'web-mjesta možda i upisati ih
websiteTitle $ = $ newBand;
$ is_activated = 1;
$ ID_POST_GROUP = 4;
($memberName).$realPassword); //Password must be encrypted $ lozinka = sha1 (strtolower ($ memberName). realPassword $), / / Lozinka mora biti šifriran

/ / Provjerite jesu li njihove isn'ta člana s istim imenom u SMF bazu podataka. Mi ne želimo ući bilo tko slučajno dvaput
$ upit = "SELECT * FROM smf_members GDJE memberName = '$ memberName'";
("Config Error 2222343242b"); $ rezultat = mysql_query ($ upit) ili umrijeti ( "Config 2222343242b Greška");
$ nrows = mysql_num_rows ($ rezultat);

/ / Ako je članica ime je pronađeno ništa
if ($ nrows> 0) ()

else (

/ / Ako korisnik nije već prijavio za forume, to i poslati e-mail ....
$ upit = "INSERT U smf_members (memberName, realname, emailAddress, is_activated, ID_POST_GROUP, passwd, websiteUrl, websiteTitle) vrijednosti ( '$ memberName', '$ realname', '$ emailAddress',' $ is_activated ',' $ ID_POST_GROUP ' , '$ Lozinka' "$ websiteUrl '', $ websiteTitle ')";

("Config Error 2232 "); $ rezultat = mysql_query ($ upit) ili umrijeti ( "Config Pogreška 2232");

/ / Sada trebamo poslati poruku e-pošte grupe
$ do = $ emailAddress;
$ subject = "forumu Vaš korisničko ime i lozinku";

/ / Od
$ zaglavlje = "iz: Me <me@mysite.com>";

/ / Vaša poruka
$ poruka .= "Vaše ime i zaporka su navedene u nastavku. Možete promijeniti ili na bilo. Ako ne želite sudjelovati u forumima, to je bez problema. Samo ne prijavite se i bit će kao ništa ikada dogodilo . \ r \ n ";
$ poruka .= "Korisničko ime: Lozinka memberName $: $ realPassword \ r \ n";

/ / Pošalji e-mail
$ poslanapošta = mail ($ do, $ subject, $ poruka, $ zaglavlje);
if ($ poslanapošta)

echo ( "- DA!");
/ / Ovo je posljednji dio naše jeka. U "-DA!" samo će biti štampani ako e-mail je poslan. Tako potpuni ispis linija će izgledati otprilike ovako:
/ / Adam Strife - 4s6vsxag - AdamStrife - DA!

)

)
)

Kako ručno umetanje korisnika u SMF forum koristeći PHP

Posted u SMF (Simple Machine Forum), php po ShortLikeAFox na 28. srpnja 2008

Ovo je specifičan primjer za SMF 1.1.5. Ne mogu garantirati da će raditi s bilo koje druge verzije.

Zato što pokrenete Simple Machine Forum Software i želite ručno unijeti korisnik? Nema problema. Znam taj problem čini vrlo specifičnim, ali ideja je objašnjeno ovdje se mogu prilagođenom druge vrste forumi i ostale baze podataka upravljan programskih paketa kao što su Wordpress. Prije nego što smo dobili upravo u tome, da je osmotriti kako Simple Machine Forum vodi evidenciju o korisnicima. U SMF baze podataka nalazi se tablica zove smf_members. U smf_members struktura izgleda ovako:

Polje Vrsta Null

Ključ Zadano Extra
ID_MEMBER mediumint (8) nepotpisani NE PRI NULL auto_increment
memberName varchar (80) NE Mul
dateRegistered int (10) nepotpisani NE Mul 0
komentara mediumint (8) nepotpisani NE Mul 0
ID_GROUP smallint (5) nepotpisani NE Mul 0
lngfile tinytext NE Mul
lastLogin int (10) nepotpisani NE Mul 0
realname tinytext NE
instantMessages smallint (5) NE 0
unreadMessages smallint (5) NE 0
buddy_list tekst NE
pm_ignore_list tekst NE
messageLabels tekst NE
passwd varchar (64) NE
emailAddress tinytext NE
personalText tinytext NE
spol tinyint (4) nepotpisani NE 0
Datum rođenja datum NE Mul 0001-01-01
websiteTitle tinytext NE
websiteUrl tinytext NE
mjesto tinytext NE
ICQ tinytext NE
AIM varchar (16) NE
YIM varchar (32) NE
MSN tinytext NE
hideEmail tinyint (4) NE 0
showOnline tinyint (4) NE 1
timeFormat varchar (80) NE
potpis tekst NE
timeOffset plutati NE 0
avatar tinytext NE
pm_email_notify tinyint (4) NE 0
karmaBad smallint (5) nepotpisani NE 0
karmaGood smallint (5) nepotpisani NE 0
usertitle tinytext NE
notifyAnnouncements tinyint (4) NE 1
notifyOnce tinyint (4) NE 1
notifySendBody tinyint (4) NE 0
notifyTypes tinyint (4) NE 2
memberIP tinytext NE
memberIP2 tinytext NE
secretQuestion tinytext NE
secretAnswer varchar (64) NE
ID_THEME tinyint (4) nepotpisani NE 0
is_activated tinyint (3) nepotpisani NE 1
validation_code varchar (10) NE
ID_MSG_LAST_VISIT int (10) nepotpisani NE 0
additionalGroups tinytext NE
smileySet varchar (48) NE
ID_POST_GROUP smallint (5) nepotpisani NE Mul 0
totalTimeLoggedIn int (10) nepotpisani NE 0
passwordSalt varchar (5) NE

Polja nam je potrebno obratiti pažnju na:

  • memberName - Samopomoć Explanitory.
  • dateRegistered - Nije potrebno, ali ako se ne napuni se datum prikazuje kao registrirani 31. prosinca 1969. Datum se sprema kao vremenske epohe. Ne znam kako izračunati timestamps u tvoju glavu? Nema problema. Ja koristiti besplatno generator pronaći ovdje.
  • realname - treba umetnuti. Kad nisam siguran bih samo ponoviti memberName ovdje.
  • emailAddress - Samopomoć Explanitory.
  • is_activated - Mora biti postavljen na 1 jer mi se ručno aktivirati član.
  • ID_POST_GROUP - neću lagati. Nisam siguran što je ovo, ali to uvijek izgleda kao da se postavi na 4. Dakle .... Uvijek sam ga postavite na 4. Nije najbolji način za program, ali ono što mogu učiniti?
  • passwd - Lozinka želite dati novi korisnik. Nemoguće je shvatiti kako ući bez gledate SMF dokumentaciju. Ispravna šifra za šifriranje jedan SMF lozinku za baze podataka izgleda ovako:

($memberName).$password) $ passwd = sha1 (strtolower ($ memberName). $ lozinka)

U gore liniju koda, $ lozinka je stvarni korisnik i lozinku.

Kako to učiniti:

/ / Prvo, spojite se na SMF bazu podataka

$ host = "hostname", / / host ime
$ username = "korisničko ime", / / MySQL korisničko ime
$ MojaLozinka = "lozinka", / / MySQL password
$ db_name = "korisničko ime", / / Database ime

("cannot connect to server"); mysql_connect ( "$ host", "$ username", "$ MojaLozinka") ili umrijeti ( "ne može spojiti na poslužitelj");
("cannot select DB"); mysql_select_db ( "$ db_name") ili umrijeti ( "ne mogu odabrati DB");

$ memberName = "Ironman";
$ realname = "Tony Stark";
$ emailAddress = "ironMan@ironMan.com";
$ is_activated = 1;
$ ID_POST_GROUP = 4;

$ lozinka = "Tony1234";

($memberName).$password); $ lozinka = sha1 (strtolower ($ memberName). $ lozinka);

$ dateRegistered = 1216951200; / / 7-25-2008 2 AM

$ upit = "INSERT U smf_members (memberName, realname, emailAddress, is_activated, ID_POST_GROUP, passwd, dateRegistered) vrijednosti ( '$ memberName', '$ realname', '$ emailAddress',' $ is_activated ',' $ ID_POST_GROUP ',' $ lozinka ',' $ dateRegistered ') ";
("SMF Error 101.234 "); $ rezultat = mysql_query ($ upit) ili umrijeti ( "Pogreška SMF 101.234");

To je sve što je na njemu!

Kako napraviti thumbnail slike koristeći PHP

Posted in funkcija, php po ShortLikeAFox dana 22. srpnja 2008

Tako želite izraditi sličice iz slika dano PHP ... čini ovaj jednostavan zadatak. Ja prvi napisao je funkcija koja se bavi ispod slike od strane korisnika na site mogu pomoći administraciju. Postavljene slike na ovoj stranici mogu jpegs, pngs, ili gifs, pa sam morao napisati funkcije za rad sa sva tri. Ovaj kod je izvorno temeljen isključivanje funkcije naći na webcheatsheet.com

Kako to učiniti:

funkcija createThumbs ($ pathToImages, fname $, $ pathToThumbs, $ thumbWidth)
(

/ / Analizirati put za proširenje

$ info = pathinfo ($ pathToImages. $ fname);
/ / Nastaviti samo ako je to JPEG slike
($info['extension']) == ‘jpeg’) ) if ((strtolower ($ info [ 'ekstenziju']) == 'jpg') | | (strtolower ($ info [ 'ekstenziju']) == 'jpeg'))
(

/ / Učitavanje slike i dobiti veličina slike
$ img = imagecreatefromjpeg ( "$ (pathToImages) ($ fname)");
$ width = imagesx ($ img);
visina imagesy = $ ($ img);

/ / Izračunajte sličicama veličini
new_width $ = $ thumbWidth;
new_height kat = $ ($ * visina (thumbWidth $ / $ width));

/ / Izraditi novu privremenu sliku
$ tmp_img = imagecreatetruecolor ($ new_width, $ new_height);

/ / Kopiranje i veličinu slike stare u novu sliku
imagecopyresized ($ tmp_img, $ img, 0, 0, 0, 0, $ new_width, new_height $, $ width, $ visina);

/ / Spremanje u datoteku sličice
imagejpeg ($ tmp_img, "$ (pathToThumbs) ($ fname)");

)

if (strtolower ($ info [ 'ekstenziju']) == 'gif')
(

/ / Učitavanje slike i dobiti veličina slike
$ img = imagecreatefromgif ( "$ (pathToImages) ($ fname)");
$ width = imagesx ($ img);
visina imagesy = $ ($ img);

/ / Izračunajte sličicama veličini
new_width $ = $ thumbWidth;
new_height kat = $ ($ * visina (thumbWidth $ / $ width));

/ / Izraditi novu privremenu sliku
$ tmp_img = imagecreatetruecolor ($ new_width, $ new_height);

/ / Kopiranje i veličinu slike stare u novu sliku
imagecopyresized ($ tmp_img, $ img, 0, 0, 0, 0, $ new_width, new_height $, $ width, $ visina);

/ / Spremanje u datoteku sličice
imagegif ($ tmp_img, "$ (pathToThumbs) ($ fname)");

)

if (strtolower ($ info [ 'ekstenziju']) == 'png')
(

/ / Učitavanje slike i dobiti veličina slike
$ img = imagecreatefrompng ( "$ (pathToImages) ($ fname)");
$ width = imagesx ($ img);
visina imagesy = $ ($ img);

/ / Izračunajte sličicama veličini
new_width $ = $ thumbWidth;
new_height kat = $ ($ * visina (thumbWidth $ / $ width));

/ / Izraditi novu privremenu sliku
$ tmp_img = imagecreatetruecolor ($ new_width, $ new_height);

/ / Kopiranje i veličinu slike stare u novu sliku
imagecopyresized ($ tmp_img, $ img, 0, 0, 0, 0, $ new_width, new_height $, $ width, $ visina);

/ / Spremanje u datoteku sličice
imagepng ($ tmp_img, "$ (pathToThumbs) ($ fname)");

)

)

Kako to radi

Funkcija createThumbs traje četiri argumente.

  • $ pathToImages -> Put do mape slikovne datoteke je rezervirati To bi moglo izgledati otprilike ovako: / home / sadržaj / ime / html / popis / učitavanja /
  • $ fname -> Ime datoteke: pic1.gif, johnny.jpg, etc ...
  • $ pathToThumbs -> Put do mape u koju želite na sličicu za rezervirati ne želite da se ovaj put isto kao $ pathToImages, jer sličicu će imati isto ime kao izvornu sliku.
  • $ thumbWidth -> širinu koju želite sličice da se u pikselima.

Važna napomena da je ovdje napravite je da ove funkcije nema na mjestu, osim datotečni nastavak provjerite, da biste bili sigurni da slikovne datoteke sadrže zlonamjerni ništa. Budući da se datoteke createThumbs () radi s već učitali se pretpostavlja da se datoteke su prikladne scrutinized.

Prva stvar createThumbs () to je poziv pathinfo (). pathinfo () prijeloma dijelova put u niz. To je korisno za nas, jer mi je potrebno datotečni nastavak za pravilno izraditi sličice. Sljedeća createThumbs () provjerava da li je riječ o jpeg. Ako je originalni datoteke je JPEG createThumbs stvara novu sliku na temelju izvorne slike s imagecreatefromjpeg (). Sljedeći korak je da bi dobili širinu i visinu slike (imagesx (), imagesy ()). Korištenje $ thumbWidth i omjer originalne širine i visine createThumbs () postavlja nove širine i visine sličice. Upotreba ove nove Pokazivači createThumbs () stvara "prazne" snimke koje će biti iste širine i visine sličice sa imagecreatetruecolor (). Imagecopyresized () se koristi za veličinu slika i spremiti ga u "prazno" upravo stvorili. imagecopyresized () može činiti kao da se puno parametara, ali ako vas pogledajte dokumentaciju ga stvarno nije to komplicirano. Sada da sličice postoji kao istinski boje slike createThumbs sve treba učiniti je pretvoriti datoteku u jpeg. Da biste to učinili imagejpeg () se zove.

To je način na koji funkcioniraju djela za jpegs. Tu su minimalne razlike. Pngs i. Gifs.


« Previous entries