Re: [PHP] PROBLEM WITH MAIL FUNCTION
Hello, Juanjo Pascual wrote: I have a problem with the mail function when I send a mail with acents or Ñ in the subject. When I receive the mail this caracters have been replaced by X. I'm using the mail function in this way: mail([EMAIL PROTECTED], 'Consulta Señalítica desde la página web', 'strongHola, esto es una pruebastrong','From: [EMAIL PROTECTED]' . \r\n . 'Content-type: text/html; charset=iso-8859-1' . \r\n); The mail subject when I receive the message is like this: Consulta SeXalXtica desde la pXgina web ¿How can I solve this problem? Headers with non-ASCII characters must be encoded with q-encoding. If you do not know how to encode headers that way, you may want to try this class for composing and sending MIME messages that can encode headers as needed. Take a look at the test_email_message.php example script that shows how to send messages with accents like you are using: http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: RSS creator class
Hello, on 09/19/2005 11:16 AM David Robley said the following: Wondering if anyone knows of a PHP class or other PHP tool for creating RSS/XML data which gracefully handles 'strange' characters such as M$ Word's delightful 'smart quotes'. I've found a couple so far, libRSS (by Jan Pieper) and ContentFeeder 2.0, but neither deals very well with the plethora of rubbish that seems to issue from Word. These seem to be mainly in the range (but not all of the range) ASCII 128 - 159 You may want to try this class. It can generate XML/RSS documents in any encoding you want. It may also convert iso-8859-1 to utf-8 and vice-versa when generating the XML documents, but if you already have the text in the target encoding that you want to use, you do not need the class to convert anything: http://www.phpclasses.org/rsswriter You also need this: http://www.phpclasses.org/xmlwriter -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Suggestions for class design
Hello, on 09/19/2005 02:33 PM Chris W. Parker said the following: Let's take for example a class called 'Customer' that (obviously) manipulates customers in the database. Here is a very basic Customer class. (Data validation and the like are left out for brevity.) This is a basic object persistence problem. (Unless I've already got some major design flaws I think we should be good to go.) Where I get tripped up is when I realize I'll need to at some point get more than one customer at a time and thus I want to add a method called 'get_customers()'. Yes, there is a problem. You are trying to retrieve objects into memory before they exist. It makes more sense that you retrieve objects using a factory class. That is the approach of Metastorage. You may want to take a looka at Metastorage before you reinvent the wheel. Metastorage is an persistent object class generator tool that lets you design your persistent object classes using a simple XML format that describes the classes, variables, validation rules, relationships and any functions that you may need to manipulate your objects. Besides the persistent object classes, it also generates a factory class that takes care creating new objects from scratch or retrieve them from the database. The factory class makes sure that each object does not exist more than once in memory. When you want to retrieve a collection of objects of the same class. You just add a function to the factory class to retrieve such objects, instead of calling the actual class of the objects your are retrieving. You can also retrieve a collection of objects related to an object right from its class, for instance retrieving children objects of given parent object. In that case you would add a function to the parent object class, despite internally Metastorage implements that using calls to the factory class, which is itself a singleton. Anyway, if you want to know more about Metastorage, you may find more information here: http://www.meta-language.net/metastorage.html There is a tutorial here: http://www.meta-language.net/metastorage-tutorial.html Some screenshots of the Web interface: http://www.meta-language.net/screenshots.html -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: Suggestions for class design
of avoiding to create multiple copies of the same Customer object in memory. That can be done by keeping a private array of all Customer objects retrieved in memory so far. While retrieving the Customer collection query results, the factory class can check if a given customer object was already retrieve. If so it may return a reference to previously retrieved object instead of creating a new copy. This is important because if you changed an Customer object in memory and later query a collection of customer object, if a new object copy is created it would be inconsistent with what you changed before. The consequences for your application can be disastrous. I am not sure if this explanation is clear now as I admit that these matters are very abstract. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: email validation (no regex)
Hello, on 09/21/2005 02:49 PM Jim Moseby said the following: I threw together this totally untested and unreliable code to solicit comments on whether or not this is a good way to validate emails. Consider the following: So, what is the general thought about validating email addresses in this manner? This may work but your code has several problems like not handling long lines, multiline SMTP responses and grey listing. That may cause your code to break with some SMTP servers or give false negatives. Instead of re-inventing the wheel, you may want to try this popular class for validation of e-mail addresses that can check the destination SMTP server but it handles correctly the problems I mentioned above: http://www.phpclasses.org/emailvalidation -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: Suggestions for class design
Hello, on 09/20/2005 10:04 AM Michael Sims said the following: This is not to trivialize your Metastorage project (or, to be more accurate, I know nothing about it, so it's not my place to trivialize it or otherwise), but to point out that 'out-of-the-box' solutions to fundamental coding development problems probably ultimately makes for a poorer programmer. I could well be wrong, but it seems this is a case of give a man a fish as opposed to teach a man to fish. I see your point, but I'm not so sure I agree fully. Manuel suggested Metastorage (which makes sense, it's his project and he's most familiar/comfortable with it), I suggested Propel because that is what I've used. I think we both suggested existing ORM's for the same reason... namely that properly implementing a full featured ORM is an extremely difficult thing to get right. I don't know anything about Chris's skill as a programmer, but he's bound to reinvent the wheel several times over, and poorly to boot. I believe that implementing an ORM is one of those things that you cannot fully understand and appreciate until you've tried to do it and failed. IMHO it's only after you've built one that you realize what you really need, and by then it needs to be rebuilt. It's kind of like Fred Brook's plan to throw one away; you will, anyhow, or at least it was for me. Right, I could not have said it better, especially the part about people that prefer to break their heads trying to do something that others have done, providing much more mature solutions. I am including myself in that group of people. 3 years ago I started developing Metastorage but only after have looked at several solutions and learned they had too many deficiencies to be adopted. That study helped me realizing what would be the important design mistakes to avoid. Another thing I had done halfway was support for querying objects (without using SQL). Basically I had created different types of criteria that could be used, but my support for criteria wasn't general enough. IOW, if I didn't forsee that you would want a particular type of criteria, then you couldn't use it. Propel gets this right by supporting any arbitrary criteria using their Criteria object approach (and I'm sure Metastorage has similiar functionality). If you can represent it using SQL, you can represent it using Propel's Criteria. Metastorage provides its own OQL (Object Query Language). This means that you can define functions for your ORM to query objects and associate a search expression using that OQL. Metastorage compiles that expression into SQL at code generation time, that may include parameters to be passed to the function at run time. This way the code generated by Metastorage does not waste time or memory building the SQL search clause at runtime, because all query decisions are antecipated at run time. This results in fast code that is very compact. I think it's important to point out, however, that I have learned just as much from using Propel as I did from creating my own ORMI didn't just simply drop Propel into place and run with it. First of all, I modified it a good bit to work better for my environment. Secondly, as a general rule I don't incorporate any third-party code/libraries into my codebase without at least doing a cursory review through the code. Since I was particularly interested in how this problem was solved, I investigated it more thorougly than I normally would. Right. I feel that I need to clarify that Metastorage approach seems to be very different from Propel. Metastorage generates self-contained code. This means that it generates code that does not depend on extra libraries to perform its function, which is ORM. Of course it uses Metabase to access the database but Metabase does not implement the base ORM functionality. Other than that, Metastorage generated code does not depend on anything else. Now, with all that said, it's possible that Chris isn't to the point where he would benefit much from plugging in another ORM...in order to learn from someone else code you at least have to have a basic understanding of the problem they are trying to solve, or it will all be greek to you. And if that's the case then you're right, it might hurt more than it will help. So let me amend my recommendation by saying check out Propel/Metastorage if you're willing to actually study the approach it takes as opposed to simply plugging it in. :) Right, regardless of what Chris decide, my suggestion was not to use Metastorage but rather take a look first to what generates. Metastorage generated code even comes with comments so it easier to understand what it does and why. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator
[PHP] Re: IIS E-Mail
Hello, on 09/22/2005 05:03 PM Jay Blanchard said the following: I finally configured the IIS Virtual SMTP server as my MTA. No errors are being thrown, but no mail is being sent either. Well, it may being sent, but it is not arriving at its destination. Can someone clue me into some things to check with the IIS Vistrual SMTP Server as MTA for PHP? Any help would be greatly appreciated. If you set the return path address correctly, you will get a bounce soon or later explaining why the messages are not being delivered. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: basic user/input form questions... more validation!
Hello Bruce on 09/22/2005 03:05 PM bruce said the following: for simplicity. let's deal wit a simple user input form, that's going to place the information in a db. if the app allows the user to enter the input (call it 'foo') and then submits the form via a POST, where the data is then written to the db, what kind of validation should occur? and where should the validation take place? for my $0.02 worth, there should be be validation of the 'foo' var, to determine if the var is legitimate. there should also be validation/filterin of the var when it's placed in the db_sql command... my question (and it's basic), what validation should be performed on the 'foo' var, and why? i've seen htmlspecialchars/magic_quotes/etc.. in varius articles, but i can't find a definitive answer!! Have you tried the forms validation class that you asked me and I sent you? http://www.phpclasses.org/formsvalidation It does what you need. Namely it uses HtmlEntities() to escape special characteres in input values and so it prevents cross-site scripting (XSS) exploits. It also performs additional checks for values passed on hidden fields that could be used to exploit your sites. As for magic_quotes, that class also remove them automatically in case any values are passed with that enabled. Generally you should disable magic_quotes if you can because it is not an useful feature. also, when inserting/updating a db item, what is the 'correct' process for data? should all data that gets inserted into a db be quoted? if it should, what's the 'standard' practice? In general you should perform rigorous form validation to prevent accepting malicious values and then escape string values to prevent SQL injection attacks or other SQL errors. That depends on the database you are using. I use Metabase, which is a database independent abstraction package to access SQL databases that performs the correct quoting and escaping according to the databse you use. http://www.phpclasses.org/metabase -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: Suggestions for class design
Hello, on 09/20/2005 01:51 PM Murray @ PlanetThoughtful said the following: I do not understand why this could bother you or anybody else. If you have a better solution, nothing stops you to make your recommendations. Hi Manuel, I did make my recommendation. To you. It went something like (and I'm paraphrasing), Your proposed solution doesn't solve the original poster's conceptual problem with abstracting classes that deal with collections of objects in conjunction with classes that abstract single objects. In other words, and I realize I'm stretching out on a limb with this metaphor, I saw in your post an attempt to treat the symptoms without offering a cure for the disease. That is your impression because you really do not know how Metastorage generated code works. It provides several types of functions that retrieve and manipulate collection. Retrieval is done by storing all collection objects in an array that is returned by those functions. There is no need for a separate class to abstract collections. And your perception of bias may or may not be accurate. I don't recall delivering wrath-of-god denunciation of your suggestion to use a project you developed, just acknowledged a desire to promote a project you're probably (and perhaps justifiably) proud of. You say that wasn't a component of your recommendation. I'm willing to accept that, not that I expect you to be losing any sleep over whether or not I believe you. The problem is that I am not promoting Metastorage because I am proud of it. Actually I do not promote any of my projects because of pride or any other ego related reasons. I wish some people did not guess that wrong, but I admit that sometimes it is hard to make certain intentions clear. I let others know about my projects because that helps maximizing the chance of getting valuable feedback from potential users like bug reports and feature suggestions. This is good for me because ultimately I also benefit from any improvements done on my projects due to user feedback. Anyway, it would be pointless for me to let other people know about projects of mine that do not address their needs, as that would not raise their interest. What I am trying to tell you is that while I may not be clear enough, I was trying to tell the original poster how Metastorage solves the problem he wants to solve. That does not mean he will be interested to use Metastorage, but at least it may raise his interest in studying how Metastorage solve his problem. If he will become interested in Metastorage later, I am not concerned. If he will, fine, if he doesn't, no problem either. Thank you for the extra explanation. I still don't understand the comment's relevancy to the actual question being asked by the original poster, but I will explain, in case it's of interest, why that comment caused me some confusion: - The original poster outlined that he had created a class that represented a customer. - He told the list he was having difficulties with the concept of abstracting a collection of customers - He received some helpful suggestions from the list about how to approach that task - None of which would have meant he was 'trying to retrieve objects into memory before they exist.' I don't know about anyone else, but what that comment implied to me was that the original poster was attempting to instantiate a class as an object before including the file that contained the class definition. No, that was not my point. My point is that if you want to get a collection of customers, you want a list of objects that may contain more than one. Therefore what represents better a list of objects of some class, is not an object of a class, but rather an array eventually created by a factory object. I do not think it does not make much sense that the factory object be of the same class of the list of objects that you want to retrieve. So, first you create the factory class object and then it will retrieve the customer objects into an array. What he was doing is to make the customer class a factory for a collection of its own objects. I am not sure if my comment is clearer now. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: PHP CLI - possible for mass mailing?
Hello, on 09/27/2005 02:44 AM Denis Gerasimov said the following: I was said that using Perl script is more suitable for such task since PHP scripts have problems with sending large amount of mail. Is that true or not? Any success/failure stories? It is a myth that Perl is better (or worse) than PHP for sending messages to many users. The truth is that usually you do not send messages directly to the users, but rather queue the messages in your MTA and it takes care of the actual delivery, retrying later, bounce handling etc.. I use this popular MIME message class for composing and sending messages to over 120,000 newsletter subscribers on a daily basis. The class provides means to employ some tricks to minimize the queue time and memory usage. It takes about 1 hour to queue individual messages to all the recipients. PHP CGI/CLI version are started from a cron job that calls set_time_limit(0); to let PHP run the script for a long time. The class comes with examples of optimize its use for bulk mailing. http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Email Validation built-in? RFC
Hello, on 10/22/2005 12:58 AM Richard Lynch said the following: Checking MX records is not reliable at all. I agree that it is less useful today, but it still help catches many domain name typos. ... would it not make sense for there to be a BUILT-IN PHP function of a TRUE email syntactic validation? I don't see that being much better than passing a good regular expression to preg_match. Currently, email syntax validation is being done in very limited fashion, if not outright wrong by rejecting what actually ARE valid email addresses in about 10,000,000 PHP scripts by users who don't have any realistic options to truly do it right because who can really live with that 3-page Regex in their PHP code? For many years I use this regular expression in popular email validation and forms generation and validation classes. http://www.phpclasses.org/formsgeneration http://www.phpclasses.org/emailvalidation Rather than accepting only valid characters, it rejects all invalid characters as specified in the RFC. ^([-!#$%'*+./0-9=?A-Z^_`a-z{|}~])+@([-!#$%'*+/0-9=?A-Z^_`a-z{|}~]+\\.)+[a-zA-Z]{2,6}$ I think it could be enhanced to reject all invalid characters as specified in the RFC instead of accepting only the valid ASCII characters. It would be just a matter of changing a variable in both the classes above. Other than using that expression in PHP, the forms class can do the same in Javascript to reduce server round trip to check the email format. The email validation class can perform subsequent validation of DNS records and simulate delivery to see if the remote SMTP server would accept. It returns 3 kinds of results: Yes, no, maybe (not possible to determine for sure). It is even capable to distinguish a real rejection from a whitelist temporary rejection. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: Email Validation built-in? RFC
Hello, on 10/23/2005 07:21 PM Robin Vickery said the following: Checking MX records is not reliable at all. I agree that it is less useful today, but it still help catches many domain name typos. ... would it not make sense for there to be a BUILT-IN PHP function of a TRUE email syntactic validation? I don't see that being much better than passing a good regular expression to preg_match. 1. Technically you can't write a regular expression that matches *all* valid email addresses as part of the address specification is recursive. ccontent = ctext / quoted-pair / comment comment = ( *([FWS] ccontent) [FWS] ) Admittedly 99.99% of people don't even know you *can* comment email addresses so it's not a huge problem... If I am not mistaken, PCRE supports recursive regular expressions. Anyway, the way I got the RFC that is not quite the form of an address but the way it may be presented in message header. Meaning, you can add comments in To: or other e-mail header but in reality the comments are not part of the address. 2. Very few people seem to be capable of recognising a *good* regular expression, let alone writing one. It seems clear that validating an address is a task that many people want to do, but few can do properly. I'd say that's a good reason for making it a built-in function. Yes. What I meant is that just copying a good enough regular expression would be sufficient to use it. There is no need to understand it. For many years I use this regular expression in popular email validation and forms generation and validation classes. Rather than accepting only valid characters, it rejects all invalid characters as specified in the RFC. ^([-!#$%'*+./0-9=?A-Z^_`a-z{|}~])+@([-!#$%'*+/0-9=?A-Z^_`a-z{|}~]+\\.)+[a-zA-Z]{2,6}$ I'm sorry, but this regular expression rejects many perfectly valid ASCII characters. It seems to take into account only dot-atoms, not quoted-strings. It also rejects valid addresses using domain-literals. You are right of course. What I wrote is not what I meant. I fixed the sentence later but I did not realize that the message had already been sent. What I meant is that despite I use that regular expression for many years without complaints, it could be improved to reject only invalid characters, but of course that is not what that expression does. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: function 'another_mail' with authentication
Hello, on 10/24/2005 10:57 PM Etienne Finet said the following: Can anyone give me a clue on how to change this script so it can be used with basic SMTP authentication? SMTP authentication is not that simple. There are several authentication methods and you need to establish an authentication dialog according to what authentication methods your SMTP server supports. You may want to take a look at this class that provides a wrapper function named smtp_mail similar to the one that you wrote, except that it also implements authentication as you need. http://www.phpclasses.org/mimemessage You also need this class for the SMTP dialog: http://www.phpclasses.org/smtpclass And this class for the authentication support: http://www.phpclasses.org/sasl -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: php + cURL issue
Hello, on 11/17/2005 08:00 PM Nate Nielsen said the following: I'm having an issue with cURL. I have installed it on two different boxes, one is working properly, and another isn't. The script auto login's a user to a site. One server it works as expected and logs the user in, the other it does not. It appears the cookie data that is being saved is different on the two machines from the login. The code itself is identical. The result on the two servers is different. I've fiddled with this thing for a couple weeks, and now its too late to mess with it anymore as I have a launch target I need to hit. This sounds like bugs in different curl library versions. I cannot help you with CURL itself because I do not use it except for circumstances where SSL is needed and OpenSSl is not available. Anyway, I use this HTTP client class that uses either fsockopen connections or curl depending what is available. When SSL is not necessary, the Curl library is not used at all. The class takes care of collecting and send back any site cookies, handles redirection, complex HTTP authentication methods, etc.. You may want to take a look at it here: http://www.phpclasses.org/httpclient -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] PHP and email
Hello, on 11/24/2005 11:38 AM Angelo Zanetti said the following: Thanks to those who have replied so far, yes our main concern is the smtp server falling over or dying. So to come back to John Nichel's answer: John, have you done this personally and I assume the effects were good?? IE everything ran smoothly? I think you are making a big confusion. SMTP servers do not send e-mail. SMTP servers only receive e-mail. What sends e-mail are MTA (Mail Transfer Agents). Some MTA come with SMTP servers but those are independent operations. There is no reason for an SMTP server or MTA to die unless it is not configure to work upto the operating system limits. What mail server do you use? -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: NTLM, PHP and Apache
Hello, on 11/23/2005 02:58 AM Joe Wollard said the following: I'm running a rogue (the company knows about it but doesn't support it) web server for my dept and I'd like to be able to authenticate users transparently. The company is currently doing this on their own supported Intranet servers via NTLM on IIS. All I'm really looking for here is a way to extract the user name from the 'Authentication:' HTTP header using PHP on Apache (FC4). It seems that some of the string can be extracted using base64_decode(). Unfortunately it is not the part of the string that I need. It's just the domain name, the computer's NET BIOS name and the Auth-type which of course is NTLMSSP. I found a mod_ntlm for Apache, but even if I could compile it on FC4 (yes, I tried) I'm not sure I need/want the full functionality of NTLM - just a way to extract the user name of the user logged into the client machine from the HTTP header using apache. mod_ntlm is exactly what tou need. It seems that there are many sites out there that do this in Java and Perl, but none describe a way to do this in PHP..any ideas? PHP or any other language do not do anything. The Web server authentication module performs the authentication dialog and pass it to the scripts of any language through the environment variable LOGON_USER. All you need to do is to call GetEnv(LOGON_USER); -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: PhpMailer vs Pear:Mail
Hello, on 11/29/2005 10:59 PM Max Schwanekamp said the following: Richard Heyes wrote: Petr Smith wrote: I tried all and ended with http://www.phpguru.org/static/htmlMimeMail5.html fast, stable, usable. A very good choice. ;-) But but but, what *is* the advantage of one over the other? I've been a PhpMailer devotee for some time. PEAR::Mail is too spare, PhpMailer is reasonably quick and has proven quite stable (I've built a couple newsletter apps using it). What's the advantage of Richard's package vs. the Pear one (on which he is a lead dev) vs. PhpMailer? Mind me for another opinion. I am not the right person to compare those packages because I do not use them. I use a MIME message class for many years that provides special resources for optimizing deliveries to many recipients like for instance newsletters. Optimizing deliveries depend on the method that you use to deliver the messages. This package provides several different delivery methods that are implemented by different sub-classes in the package: mail(), sendmail, qmail, SMTP, Windows pickup folder. You can tell the class to optimize the queueing of the messages for many recipients just by calling the function SetBulkMail(). Then whatever is the sub-class of the delivery method that you use, it will set its mode of operation to minimize the time that your script has to wait to queue all the messages to your recipients. Furthermore, if your message body are the same for all the newsletter recipients, the class can cache the message body so it will not waste time rebuilding the message to all users. All these techniques provide huge speedup. I use this package for many years. Currently it is used to send about 3.5 million newsletters a month and I can tell you that it is very fast queuing around 30 messages per second in a qmail based setup, all done in pure PHP code. http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: PHP and Apache 2.2.0
Hello, on 12/16/2005 12:36 PM Kevin McBride said the following: I am curious to know if there are plans to make a module for Apache 2.2.0. I couldn't find it in the anonymous CVS, but if it's already there, can someone point to me where it is? Use the same as for Apache 2.0 . -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: PHP and Apache 2.2.0
Hello, on 12/17/2005 04:58 PM Kevin McBride said the following: Use the same as for Apache 2.0 . I get garbled code errors; tried it before I even posted to the list. Here's an excerpt from the Apache download page: Apache 2.2 add-in modules are not compatible with Apache 2.0 or 1.3 modules. If you are running third party add-in modules, you will need to obtain new modules written for Apache 2.2 from that third party before you attempt to upgrade from Apache 2.0. I built PHP 5.1 with Apache 2.2 following these instructions and it works: http://ww.php.net/manual/en/install.unix.apache2.php -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] PHPMailer inserting unwanted spaces
Hello, on 01/03/2006 03:37 PM René Fournier said the following: Actually, I can send the example messages but here is another description of the same problem. (So PHPMailer is inserting line breaks, not spaces—or something is...) http://sourceforge.net/tracker/index.php? func=detailaid=1267539group_id=26031atid=385708 This sounds like wrong body encoding problem. You may also want to try this other MIME e-mail message composing and sending class. It has been working well for many years to send HTML messages even with embedded images. Try the test_html_mail_message.php example and see if it works for you: http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Curl Question
Hello, on 01/03/2006 06:52 PM Ray Hauge said the following: I just wanted to see if anyone knew if there was any difference in performance between using curl in an exec() statement and when using the libCurl functions within PHP. Executing a separate program should be a little slower as it adds some overhead before executing a request. Actually, in some cases it can be a little faster to use fsockopen instead of libcurl as it is one less library to load. You may also want to take a look at this HTTP client class that uses fsockopen everytime it is possible and only uses libcurl functions in certain cases. This class takes care of cookie handling, redirection, form posting, file uploading, etc.. http://www.phpclasses.org/httpclient -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: date processing needed in form
Hello, on 01/03/2006 06:41 PM Sue said the following: I need to create a form that allows the user to select a Month, Day and Year. I am also new to PHP and am wondering if there is a way for me to display the contents of the Select list box (for the Day) based on the Month that is selected (and Year), so that the valid number of days for the month ( year?) displays. For all of our other forms, we use CGI to handle our standard forms validation, and was hoping to handle more complex validation within PHP prior to sending the entire contents of my form to our standard CGI validation routine. I know that I could use the Checkdate function once the entire date is selected, but thought there might be an easier/more efficient way of handling this and also not sure how to reference Checkdate prior to Submitting my form to the CGI routine. I also was not sure if this was something that is handled easier using Javascript? Any help/examples, etc. would be greatly appreciated! You may want to try this forms generation and validation class. It comes with a calendar date plug-in that does exactly what you want. It lets you choose a date using several text or select fields and it can validate the date that you choose using special Javascript code generated by the plug-in. If you want, it can also restrict the range of accepted dates, like since a given date or no later than another date. The plug-in class validates either on the client side with Javascript or server side with PHP. You do not need to know any Javascript to use this. http://www.phpclasses.org/formgeneration Here is a screen shot: http://www.phpclasses.org/browse/file/8245.html Here is an example page: http://www.phpclasses.org/browse/view/html/file/6799/name/test_date_input_page.html -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Using aliases to have an email trigger a php script
Hello, on 01/14/2006 02:55 PM Sean Lerner said the following: I'd like an email received to [EMAIL PROTECTED] to trigger a php script. Although it is not exactly the same thing, wouldn't it be simpler to associate a POP3 mailbox to that address and regularly poll the mailbox in PHP? I do that everytime to handle messages that need to be processed programaticall. I use for instance this class to poll a POP3 mailbox: http://www.phpclasses.org/pop3class -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] header WWW-Authenticate Question
Hello, I am trying to send username/password credentials to a web server using a PHP script. This is done to automatically log into a web camera from my workstation. I don't know if the header www-authenticate option is the correct one (or if it's even possible) to use for this. You may want to try this HTTP client class. It comes with HTTP authentication support using the SASL library package. The example test_http.php has some comments to let you know how to configure the authetication support: http://www.phpclasses.org/httpclient http://www.phpclasses.org/sasl -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] copy problem with HTTP wrapper
Hello, on 01/27/2006 05:59 AM Laurent Vanstaen said the following: I see your point. Here in my case the server I want to copy a file on has 192.168.1.1 for IP address and thus cannot be found from outside a LAN, so the security problem is not that much important. But I agree with you and see what you mean. You may want to try sending files via form upload. Then on the destination end the you could have a PHP script that would take care of authentication and receiving and storing the uploaded files. In that case you may want to try this HTTP client class. It can act as a normal browser submitting files via POST and also authentication, cookie handling and redirection in case you want make a robust file copying system: http://www.phpclasses.org/httpclient -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] copy problem with HTTP wrapper
Hello, on 01/27/2006 11:07 AM Laurent Vanstaen said the following: I see your point. Here in my case the server I want to copy a file on has 192.168.1.1 for IP address and thus cannot be found from outside a LAN, so the security problem is not that much important. But I agree with you and see what you mean. You may want to try sending files via form upload. Then on the destination end the you could have a PHP script that would take care of authentication and receiving and storing the uploaded files. The destination server doesn't have PHP It that case you need to use a different kind of file server support. For instance, if it has Samba (Windows like file shares), you can try this other class: http://www.phpclasses.org/smbwebclient -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: vaidation and mail function question
Hello, on 02/10/2006 05:48 AM Paul Goepfert said the following: I am beginnging to do vaidation on my web form and I know of a few functions to do this with. For example the empty fuction and the is_ functions. Ok to give you a picture of what I am vaildating its just your basic form, Name, Address, Email. I am obviously going to check for empty fields. However I do want better error checking other then testing for emptty fields. Can anyone help me with that? You may want to try this popular forms generation and validation class. It provides all you need to validate those field types. http://www.phpclasses.org/formsgeneration After this form is finished vaildating I am going to be sending an email of the contents of the form to an email account. I have seen in other messages on this board about the mail function. I'm not sure about this but I think I read that in order for the mail function to work the webserver needs sendmail to make the mail function work. Is this true? I have looked at the phpinfo page on the targeted webserver and the sendmail value is missing. I assume that is ok because the webserver is on a windows system rather then a unix system. I just want to be sure about this. On Windows, it uses a SMTP server. -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
RE: [PHP] Complications when sending HTML email
Hello, Best group member, I am sending HTML email with PHP. I use the example code in the manual to try, and the email is sent. However, it is not decoded correctly in my Outlook. I checked thru webmail clients, and then it work. I thought it was my Outlook that was not correct, but I am receiving HTML emails from other sources that are displayed correctly. In the bottom I have the email that is sent to me, it is displayed like this in Outlook. Is there maybe something I have to add in the header to get it to work with Outlook? It is hard to tell without seeing your mail composing code. Anyway, decoding problems usally means wrong encoding. Regardless of the character set you use, you need to send your messages encoded with quoted-printable. If you do not do that, long lines may be truncated and non-ASCII characters may be swapped by ASCII characters. Another problem, is sending HTML only messages. This is a big no no. Well encoded HTML messages do not cause decoding problems but some mail systems like Hotmail may discard the messages. The right thing to do is to compose HTML messages with an alternative text part encapsualting both in a MIME multipart/alternative part. This is not a trivial matter but it is the right thing to do. If you look in Google I am sure you will find plenty of tutorials on how to do it with PHP functions for encoding quoted printable and composing multipart/alternative messages as needed. Alternatively, if you do not want to take much time figuring how to do it yourself, you may take advantage of many existing ready to use classes of objects for composing and sending MIME compliant messages like for instance this one: http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos info at phpclasses dot org Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: HN CAPTCHA at http://www.phpclasses.org
Hello, on 02/15/2006 11:44 PM Roger Thomas said the following: I am currently testing HN CAPTCHA and noticed that the range of alphabets that were produced ranges from A..F only. My PHP skill is quite limited to change that to A..Z so if ppl here have any experience with that class, appreciate your thoughts. TIA. HN CAPTCHA: http://www.phpclasses.org/browse/package/1569.html I suggest that you contact the author, either posting in that package support forum in the same site or by e-mail. I think the author is the most qualified person to make the improvements you want. -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] HN CAPTCHA at http://www.phpclasses.org
Hello, on 02/16/2006 01:20 PM tedd said the following: I am currently testing HN CAPTCHA and noticed that the range of alphabets that were produced ranges from A..F only. My PHP skill is quite limited to change that to A..Z so if ppl here have any experience with that class, appreciate your thoughts. TIA. HN CAPTCHA: http://www.phpclasses.org/browse/package/1569.html --roger --roger: Why use CAPTCHA? It is very problematic for the visually impaired. If you must use a barrier, then you can make it less difficult (but doesn't solve the problem) for the visually impaired by using something like: http://xn--ovg.com/captcha If you want the code, just ask. Most of those who are aware of disability issues, don't use any barriers at all. CAPTCHA is often used to prevent abuses from people using automated robot programs. To solve the problem of visually impaired people, there are audio CAPTCHA solutions. -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Site bloated by images
Hello, on 02/16/2006 12:36 PM MARG said the following: Hi, I have this site on http://www.dte.ua.pt/portulano/ The problem with it is that it tak ages for the images to appear. I have several other sites in the same server and this one is the only which has this kind of trouble. I've already pushed up memory_limit in php.ini, but no good :( Your server is being flooded with excessive connections that seem to exhaust your server memory. Consider serving the images with a multithreaded HTTP server dedicated to static content like images and CSS, like thttp. Here you may find more details on what you can do to solve that problem: http://www.meta-language.net/metabase-faq.html#excessive-connections -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] HN CAPTCHA at http://www.phpclasses.org
Hello, on 02/17/2006 01:55 AM tedd said the following: Most of those who are aware of disability issues, don't use any barriers at all. CAPTCHA is often used to prevent abuses from people using automated robot programs. To solve the problem of visually impaired people, there are audio CAPTCHA solutions. Regards, Manuel Lemos Manuel: No offense meant, but please review this -- No offense taken. http://www.access-matters.com/2005/05/22/quiz-115-did-a-captcha-catch-ya/ -- before installing a CAPTCHA. Accessibility matters. I am not sure what you mean. Are you saying that nobody should use audio CAPTCHA because one user was not able to configure his browser to play the audio CAPTCHA? I am sure that it is something easier to achieve than screen reader software that many blind users use to access read Web pages loud. -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] HN CAPTCHA at http://www.phpclasses.org
Hello, on 02/17/2006 01:19 PM tedd said the following: I am not sure what you mean. Are you saying that nobody should use audio CAPTCHA because one user was not able to configure his browser to play the audio CAPTCHA? I am sure that it is something easier to achieve than screen reader software that many blind users use to access read Web pages loud. Manuel Lemos Manuel: As a friend of mine, who is very knowledgeable/experienced in these matters, said: The audio variants are still barriers because there are too may reasons why they might fail to work. As I said before, there are many other simple methods that robots don't do well. Use those instead. CPATCHAs are dead and should be buried. Anyone still using them is either too cheap to learn how to use an alternative well, or simply doesn't care about accessibility. It's time to move on. Now, perhaps you don't agree with his assessment, but I think that finding other methods to accomplish what you want has merit. You know, even with audio CPATCHA's visually impaired and other disabled groups are still against it -- what does that say? I think there are some misunderstandings . First, CAPTCHA means completely automated public Turing test to tell computers and humans apart. Any automated method on which robots don't do well, is a CAPTCHA. Therefore, to be accurate the person that wrote your quote is in contradiction. There may be better solutions, than the image or audio based, but those solutions are still CAPTCHAs because the goal is to halt robots. Another, point, blind people or people with other disabilities need all the sympathy they can get to make their lives better. Calling everybody that use image or audio CAPTCHAs too cheap does not seem to get them much more sympathy. These complaints seem to be too selfish. If somebody employs a CAPTCHA in a site is because he needs to solve a problem of abuse. It seems that somebody that complains against CAPTCHA does not care about the losses that the abuses may cause to site maintainers if the CAPTCHAs are removed or replaced by other easier to defeat CAPTCHAs. Nobody knows everything, starting by me. If there are better CAPTCHAs than the image or audio based, I would like to know about them. It would certainly be more constructive than calling too cheap to everybody using common CAPTCHA. I understand that the life of blind people is already very painful and slow. So I imagine the frustration of not getting enough attention to their cause because their are often a neglected minority. OTOH, that minority must also try to understand that CAPTCHA are necessary and must be effective. A CAPTCHA attempt that still permits abuses is not effective and sites may be still victims of extensive abuse. Consider this site that has a text based CAPTCHA at the bottom. It is very easy for a robot to read the numbers, make the calculations an enter the result without human intervention. Basically, it becomes very easy to abuse this CAPTCHA. In this aspect, this CAPTCHA is worse than image or audio based. http://pooteeweet.org/blog/329 A good CAPTCHA must be fuzzy. If you know other fuzzy CAPTCHA besides these, it may help to sharing that knowledge. -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: regular pattern to match åäö
Hello, on 02/18/2006 07:42 PM Patrick said the following: im trying to get my regular pattern to allow åäöÅÄÖ but it refuses to, i have something like this: [^a-zA-ZåäöÅÄÖ0-9-_ ] But this dosent seem to work, anyone got any ideas? It seems your message is in Windows-1252 encoding. Make sure you are not using an encoding in your PHP source code editor that is different from the encoding of your input data. -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Handling of lengthy server operation in php
Hello, on 02/19/2006 02:00 AM Adrian said the following: I tried various ideas, using header( ... ) to start other scripts etc, but so far nothing worked - things always happen synchronously (start processing, wait for it to finish, show result) which is not what a user would expect. Also, I would prefer to do everything on the server instead of using js for example in the browser. What you can do is something usually known as job queuing. It consists of having a queue, which can be a file on the disk or a database table. To queue a job, you just add a new record to that job table. Then have a background process handle it ASAP, and update its status as it progresses. When the job is marked as done, the requester can delete its record, while the background task proceeds to the next enqueued job. Here you may read more about this concept of queueing: http://www.meta-language.net/metabase-faq.html#performance -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Reading binary http post
Hello, on 02/21/2006 03:40 PM Dirk Vanden Boer said the following: I have a C++ application that posts binary data to a php script that I created using libcurl. Everything works fine except when my binary data happens to start with the '' symbol. In that case I can't read the http post data (isset returns false). The post argument then looks like data=ÑÚA Reading the post is done like this: if (isset($_POST['data']) Is there a way to fix this problem? The problem is that you are misleading PHP telling that you are posting form data. You need to correct the request Content-Type. It must not be application/x-www-form-urlencoded nor multipart/form-data . I think you can use anything except those types, like for instance application/octet-stream which is the default for binary files. I don't know how can you hack libcurl to make it use the right request content-type. It is probably easy. If you are not able to do it, you may want to try this PHP HTTP client class . It can send custom POST requests. http://www.phpclasses.org/httpclient -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] HN CAPTCHA at http://www.phpclasses.org
Hello, on 02/17/2006 05:10 PM tedd said the following: Manuel: Your points are well taken. A good CAPTCHA must be fuzzy. If you know other fuzzy CAPTCHA besides these, it may help to sharing that knowledge. The CAPTCHA I was primarily referring to was the image one -- however, it's just another barrier. I am sure there are all sorts of ways to fool a computer while making it easy for a human to comply, like Enter the third word of the first paragraph; or What is the color of an orange?; or presenting an easy question from a vast lists of questions provided at random. That is not hard to beat because it does not make it difficult to determine what is the question, like image and audio captchas. Therefore that solution is vulnerable to dictionary attacks. While computers could be designed to answer such questions, the amount of time required would be better spent going after those sites that don't have any CAPTCHA. It depends on the purpose of the attackers. If they want to attack specific sites, soon or later they will figure a way to defeat them if they have weak protection schemes. As for me, I'm trying to understand both sides and see if there is a midway solution. However, it appears that both sides are steadfastly rooted in their opinion. One side wants barriers and the other side doesn't -- mutually exclusive positions. I can't help but think there must be a software solution. Maybe, but this is not a trivial solution. Research and development costs time and money to those that need to invest on it to find better protection . People that complain against CAPTCHAs should also consider these aspects before blaming people for not using better CAPTCHA schemes. -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] HN CAPTCHA at http://www.phpclasses.org
Hello, on 02/19/2006 09:12 PM tedd said the following: Manuel: A good CAPTCHA must be fuzzy. If you know other fuzzy CAPTCHA besides these, it may help to sharing that knowledge. Try this: http://xn--ovg.com/no_bot The point of CAPTCHA is to provide something that a bot can't figure out, but a human can, right? Well, for a bot to figure out the answer, the bot must be able to get at the source code, right? Take a look at this source code and from it determine the answer. Also, try to view the content source code from any page on this site. I think this data is bot-proof, isn't it? Or have I blundered? I think you are missing the point. The role of robots is to find the solutions to hack the sites. Hackers find the solutions and develop robots to attack the sites. For an hacker, this site is easy to hack. -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] novice with hacked email form issue
Hello, on 02/21/2006 03:19 PM cKc Consultants said the following: An email form that uses a simple server side php code to send the variable values managed to send: Content-Type: multipart/alternative; boundary=5c7c7e682d991e8ec1f6825582ea2103 MIME-Version: 1.0 Subject: round a rock by way of anchorage bcc: [EMAIL PROTECTED] This is a multi-part message in MIME format. --5c7c7e682d991e8ec1f6825582ea2103 Content-Type: text/plain; charset=\us-ascii\ MIME-Version: 1.0 Content-Transfer-Encoding: 7bit system expict th time is --5c7c7e682d991e8ec1f6825582ea2103-- This appears between responses to $msg.= and shouldn't be something the user could see. In order to figure out how to prevent this, I need to know how it was done. I know I need to validate the email address more closely, but I'm curious as to what created this. I've found some interesting articles on the web, but nothing seems to deal with this issue. Pointing me in the right direction would be appreciated! The problem is that you are using unverified data came from the form directly into the message. It is easy to hack your form because you are neglecting the fact that an e-mail field may contain line breaks. This opens the chance for hackers to add extra headers and even message body data, as the PHP mail() function is very weak and does nothing reject abusive data. If you are looking for a more robust solution, take a look at this MIME message composing class. Not only it can encode special characters that can be legitemately fed to the message, but it also escapes line breaks on headers, so any attacks like you suffered are suppressed, even when you do not validate the form fields for valid e-mail addresses as you should have done: http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Problem with mail() on Debian
Hello, on 02/23/2006 03:55 AM George Pitcher said the following: Jochem, Thanks, but I tried that and it made no difference. I have found that any changes I make to php.ini are ignored, even after restarting Apache. I have been editing httpd.conf via Webmin, which for most configs works fine (and is displayed in phpinfo(), the sendmail changes are never displayed (always shows sendmail_path = /usr/sbin/sendmail). There are no miracles. If you change restarted Apache and phpinfo() shows the same in sendmail_path, either you have other Apache configuration changing PHP options, or you have not really changed php.ini, which is very likely. No, I am not saying you are crazy. It is very likely that the real php.ini is not in the path you think it is. This may happen if you have installed Zend Studio or some other tool that needs to replace the real php.ini and moves it elsewhere. Look again to the phpinfo() output to determine the real path of php.ini . -- Regards, Manuel Lemos Metastorage - Data object relational mapping layer generator http://www.metastorage.net/ PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] PHPemPT
Viva, Carlos Serro wrote: Hi all, just to announce that a new PHP local users list is born. It is called PHPemPT and it is dedicated to Portuguese users. This list is useful both for new users as well as for advanced users too. You can find this list at: http://groups.yahoo.com/group/phpempt Ha' precisamente 2 anos foi criada uma lista para utilizadores de PHP que falam Portugues. Depois de se ter fundido com uma outra lista de utilizadores de PHP brasileiros, tem actualmente mais de 1500 inscritos. http://groups.yahoo.com/group/php-pt Existe uma outra lista mais moderada que se destina discutir questoes menos triviais de PHP que tem actualmente mais de 500 inscritos. http://groups.yahoo.com/group/php-especialistas Seria bom que nao se andasse a criar mais listas para os mesmos fins para evitar que as pessoas nao enviem as mesmas mensagems para listas diferentes obrigando os que participam em varias a receber copias desnecessarias. Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
Re: [PHP] Do any of you provide hosting?
Hello Chris, On 12-Apr-01 14:05:38, you wrote: I currently am using Thehostpros.com for my hosting, but I can't say its been a pleasant experience. I had to have them install PHP because they are more ASP oriented. So that cost me more. Then I wanted MySQL and they have spent 3 months saying they'll install that. Basicly here's what I need: Someone who can host my domain (I own the domain already) Can provide MySQL and PHP. Both up-to-date. Can give around 60 meg of space (ballpark, less should be fine) Also a way to set up subdomains without needing to go through the admin (some hosts can do his). But this isn't necessary. Can anyone help with that? For about 3 years I have been hosting my sites at my ISP ( http://phphosting.adgrafix.com/ ) mostly because it provides flexibility like what you and more. One of my sites is the popular PHP Classes site that has now over 30.000 subscribers ( http://phpclasses.UpperDesign.com/ ). If I need I can ask for human support, but most things like sub-domain and e-mail account creation (extra subdomains and e-mail accounts are free) can be configured on demand via a Web interface (give it a try in the address above). Even though I am on a virtual server, I can have the database servers I want provided there is enough space and, except for dedicated servers, it doesn't require a root account to install the software. So, in my virtual server account I have a MySQL server, a PostgreSQL server and a CVS server. I even had a IRC server although I am not using it. I also have PHP and Apache compiled with modules and extensions I need because I can choose what I want. To keep all my sites automatic I even have access to my account crontab to execute periodic operations or verify if all the servers are working ok. I also have telnet/ssh account access so I can configure things on my own when I want, but the good part is that when you need help or don't have the time and patience to do it by yourself, my account manager can do it for me. He is very skilled and quick to assist me. He doesn't work for the hosting company. He just gets a commission from them. So it is in the best of his interest to serve me and other clients well. If you are interested in get such 5 stars support service, just mail me back and I'll orient you to sign-in making sure you get my account manager as yours too. Regards, Manuel Lemos Web Programming Components using PHP Classes. Look at: http://phpclasses.UpperDesign.com/?[EMAIL PROTECTED] -- E-mail: [EMAIL PROTECTED] URL: http://www.mlemos.e-na.net/ PGP key: http://www.mlemos.e-na.net/ManuelLemos.pgp -- -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
Re: [PHP] What's XML's Purpose??
Hello Chris, On 14-Apr-01 16:07:59, you wrote: Alright I'll start this out by saying I have a subscription to "Visual Basic Programmers Journal". Before I converted and realized that I loved PHP so much I used ASP. Well it seems that in this magazine that XML is a hot topic in the MS world. I know XML can be used by PHP, but is there a point? I only know 2 things about it: 1) You can make your own tags: mytag/mytag 2) It's supposedly good for databasing? If its for databasing, why not just use MySQL( or a variation). Am I missing something here? Actually XML is yet another Internet mania, pretty much like Java. Java represented the dream of some programmers of "write once run everywhere". XML represents the dream of one data/document source, many target medias (HTML, WML, PDF, etc...). The problem is that all this flexibility comes at a price, most frequently CPU time. For general Internet development this is a kind of waste, because the usual latency in deliverying information is already a problem, it gets worse if the information servers have to interpret Java programs or process XML formatted information to serve the user requests. Good sense tells that if you can serve content without going through the hops of transforming raw data (database, etc...) into XML to later transforme it into HTML, you'd better go directly from raw data to HTML or else your hardware bill will be much higher when you attempt to scale up. Now, if you mean to use XML for purposes that do not require extra processing on demand when you are serving your content, it may provide extra flexibility that may save you a lot and hand-programming. Take for instance this example. Metabase is a PHP database abstraction package that lets you develop applications that are database independent. This means that if you use Metabase you can write applications that may work seeminglessly with different databases. Just figure how much porting efforts you will save when you figure that MySQL is not enough. To help you develop fully portable applications, Metabase not only provides a database independent API, but also provides a database independent means to install and maintain database schemas. Metabase uses a custom XML format to describe database schemas: tables, fields, indexes and sequences. It comes with a parser that extracts the schema description from those XML files. Then the Metabase manager is able to install that schema by creating all the tables and sequences that are described. If someday you change your database schema, Metabase manager is also able to figure the changes and alter the schema of the previously installed database without affecting any data added to the database since the it was installed or updated for the last time. Metabase manager is also able to dump in its XML format a installed database schema along with any data stored in the database so you can install it in another database server without information loss. The use of XML in Metabase is just an example of how it can be used for a purpose that improves your development process and does not affect the ability of your applications to serve data to the users with great performance impact, like when you get when you use XML/XSL to serve data on demand. Metabase is free and is avaliable here: http://phpclasses.UpperDesign.com/browse.html/package/20 Regards, Manuel Lemos Web Programming Components using PHP Classes. Look at: http://phpclasses.UpperDesign.com/?[EMAIL PROTECTED] -- E-mail: [EMAIL PROTECTED] URL: http://www.mlemos.e-na.net/ PGP key: http://www.mlemos.e-na.net/ManuelLemos.pgp -- -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
Re: [PHP] Display Formatted Query Results
Hello Jeff, On 14-Apr-01 21:50:21, you wrote: Hi All, My apologies if this is too wordy. This is driving me nuts. I have very little experience or knowledge of PHP and MySQL but have been put in a position that requires me to build several applications that require me to figure them out. I am making progress, though. Here is my first delimit: I am not sure if this solves your whole problem, but you may want to try this PHP query result table display class: http://phpclasses.UpperDesign.com/browse.html/package/130 Manuel Lemos I have a form page that looks like this: http://www.webtinker.com/fran_info.htm This form has several things going on. 1st, the first pull down list needs to reflect the same info as the two location descriptions. 2nd, the two locations "Round Table Discussion" will grow to an unknown number of entries over time so the two may become 6 or 8 or... My first big (for me) hurdle is to figure out how to get these to show up at the top of this form in order of the date with the closest one first. They need to be in the same format as they appear but with additional rows showing as more entries are made. The ones showing can't be past due, or, don't show past dates. What I have figured out so far is how to populate the pull down, how to make the admin form to fill in the needed info into the MySQL table and I have had limited success in displaying the meeting info at the top of the form. I just can't figure out how to make them wrap into groups of info, say with 5 entries of different meetings. Do I need a separate query for each row of info using the limit statement in the query or is there a way to do this using gulp arrays? I have just about every book available and just can't find a good example of this type of formatted query results. How do I approach this? Here is the table I am using: CREATE TABLE rnd_tbl ( id tinyint(10) DEFAULT '0' NOT NULL auto_increment, location varchar(100) NOT NULL, address varchar(45) NOT NULL, address2 varchar(45) NOT NULL, city varchar(50) NOT NULL, state char(2) NOT NULL, zip varchar(14) NOT NULL, day char(3) NOT NULL, date varchar(25) NOT NULL, time varchar(25) NOT NULL, phone varchar(15) NOT NULL, PRIMARY KEY (id) ); Many Thanks!! Short Circuit -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED] Regards, Manuel Lemos Web Programming Components using PHP Classes. Look at: http://phpclasses.UpperDesign.com/?[EMAIL PROTECTED] -- E-mail: [EMAIL PROTECTED] URL: http://www.mlemos.e-na.net/ PGP key: http://www.mlemos.e-na.net/ManuelLemos.pgp -- -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
Re: [PHP] XML - simple get data from elements
Hello, Mark Bean wrote: I have a valid XML file that all I want to do is assign to variables the data in the elements title and fulltext. I know nothing about XML and am not a programmer. Are there any good tutorials out there to do something as simple as what I'm looking for? Will expat do what I'm looking for? I think that I installed PHP properly for XML support. Is there a way to verify this? You may want to try this XML generic parser class. What it does is to build an associative array of XML elements that you may traverse and assign the variables when you find the relevant XML tags. http://phpclasses.UpperDesign.com/browse.html/package/4 Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
Re: [PHP] simple database extraction problem :(
Hello Sandeep, On 03-May-01 20:07:51, you wrote: just a quick thing. i've got loads of info in mysql, which i extract and then use a while ($r = mysql_fetch_array($result)) { to output the result. the only thing is, because its a loop, all results look the same, whereas i want the first row to be displayed differently than the next 4. You may want to try this Query result table display class that you can sub-class to customize details like row and cell colors and even highlighting colors (the color that rows switch to when the mouse is over them). http://phpclasses.UpperDesign.com/browse.html/package/130 Regards, Manuel Lemos Web Programming Components using PHP Classes. Look at: http://phpclasses.UpperDesign.com/?[EMAIL PROTECTED] -- E-mail: [EMAIL PROTECTED] URL: http://www.mlemos.e-na.net/ PGP key: http://www.mlemos.e-na.net/ManuelLemos.pgp -- -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
Re: [PHP] Databases and HTML forms
Hello Michael, On 20-Apr-01 14:38:48, you wrote: I'm needing to have a form that pulls a bunch of database fields into it and then allows you to modify the fields and does the subsequent update in the database. This seems like something that has to be done all the time. Is there a right way to go about doing this? Some kind of class library or anything? Or do I just kind of code it up? Thanks for any responses. Right, you may want to check this PHP class that does exactly what you need: http://phpclasses.UpperDesign.com/browse.html/package/231 Regards, Manuel Lemos Web Programming Components using PHP Classes. Look at: http://phpclasses.UpperDesign.com/?[EMAIL PROTECTED] -- E-mail: [EMAIL PROTECTED] URL: http://www.mlemos.e-na.net/ PGP key: http://www.mlemos.e-na.net/ManuelLemos.pgp -- -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
Re: [PHP] checking if e-mail address and syntax are valid
Hello Carlos, On 24-Apr-01 17:12:53, you wrote: I would like to know if anyone has or know any PHP code to verify if a form entered e-mail address is valid? I would like that things like 4$%^%$@@.com.br could not be sent. I only has to verify the syntax of it, the existance I believe should be harder to verify but if it is possible I would be glad if anyone could point me the way. These PHP classes do exactly what you need: Forms generation and validation: http://phpclasses.UpperDesign.com/browse.html/package/1 E-mail address validation: http://phpclasses.UpperDesign.com/browse.html/package/13 Regards, Manuel Lemos Web Programming Components using PHP Classes. Look at: http://phpclasses.UpperDesign.com/?[EMAIL PROTECTED] -- E-mail: [EMAIL PROTECTED] URL: http://www.mlemos.e-na.net/ PGP key: http://www.mlemos.e-na.net/ManuelLemos.pgp -- -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]
[PHP] Re: mail problem at interland
Hello, on 01/28/2005 12:09 AM David Edwards said the following: I have a fairly simple script written that uses the mail() function on a client site hosted at Interland. I have used a similar script quite a few times before with no problem. However although the script generates no errors, no emails appear at their intended destination. Interland support has not been that helpful and they did suggest I try the '-f' option in the header. That did not work either. Has anyone seen this before, I am running out of ideas. The mail portion of the script is below: $headers .= MIME-Version: 1.0\n; $headers .= Content-type: text/plain; charset=iso-8859-1\n; $headers .= X-Priority: 1\n; $headers .= X-MSMail-Priority: High\n; $headers .= X-Mailer: php\n; $headers .= From: $emailfrom\n; $mailsent = mail($emailto, $subject, $msg, $headers,-f . $emailfrom); The headers seem to be fine, except maybe for those priority headers that are useless and may be the cause of some spam filters understand it as a pattern of spam. Other than that, you are not telling what exactly you are putting in the $emailto, $subject and $msg, and there you may because commiting a fault that may cause that your message be discarded. Without telling what you are putting there, it is hard to help further. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Sending email when sendmail_from sendmail_path = null.
Hello, on 01/31/2005 12:08 AM Tim Burgan said the following: My client's web host's PHP configuration for both sendmail_from and sendmail_path are both = null. How do I send email with PHP? What options do I need to set within my code, and what to? You need to ask that web host as they probably do not want you send e-mail in anyway. If they let you send messages via an SMTP server, you may want to try this class that comes with a function named smtp_mail() that works like mail() except that it lets you send messages relaying on a SMTP server. http://www.phpclasses.org/mimemessage You also need this: http://www.phpclasses.org/smtpclass and this if the SMTP server requires authentication: http://www.phpclasses.org/sasl -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Retrieving an URL paramter via fsockopen
Hello, on 02/07/2005 08:47 PM Larry Laffer said the following: who can give me a solution or at least a hint for the following problem: I have to get an URL parameter with an fsockopen connection. I can connect with fsockopen an given link and get back this link with an URL parameter cnr=xx Who can I do this? And who can I read this URL parameter? You may want to try this HTTP client class that can be used submit HTTP requests either via POST of GET, passing whatever parameters you want: http://www.phpclasses.org/httpclient -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] mail() function
Hello, on 02/09/2005 07:31 PM John Holmes said the following: Bosky, Dave wrote: I can't seem to get the mail function to work. Is there a way to authenticate before sending mail, I believe this is my issue. No. Manuel will be along soon to tell you to look at the SMTP classes on phpclasses.org, though. ;) There are classes there that do this, so try them. Thank you for the introduction, John. ;-) Dave, as John mentioned the PHP mail() function does not know how to authenticate. You may want to try this class that comes with a wrapper function named smtp_mail(). It works like the mail function but lets you set the authentication credentials as you need. http://www.phpclasses.org/mimemessage You also need these: http://www.phpclasses.org/smtpclass http://www.phpclasses.org/sasl -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Multi-Page Forms
Hello, on 02/09/2005 01:38 PM [EMAIL PROTECTED] said the following: I have a form which is too long to be useful displayed on one page. I have it broken up into 7 sections. All 7 are generated by the same PHP source file, from data in a database. When the user updates a section they can submit it and go to the next section, or submit it and finish (return to a higher-level page). There is also a navigation form at the top that lets them jump from any section to any other, and uses JavaScript to prompt if they try to jump without having saved changes they made to the page. All of this is working fine. What's bothering me here is that when the user is done editing the data I use their input to regenerate a style sheet (the form allows them to customize the appearance of a web page for their customers). That's expensive -- relatively speaking -- in server load so I'd rather do it only once, when they're really done. But right now I do it every time they submit any page -- i.e. whenever any of the seven pages is submitted, the generation code runs. I don't see any simple way to let them jump around between pages, yet for me to know when they are truly finished with all the data. Of course I can give the required instructions -- after you are done you have to click submit to save all the data but I bet that those won't be read and the users will jump around, fail to save, and then complain that their changes are getting lost. Any thoughts on the design issues here? You may want to take a look at this class than handles multipage forms with pages either as wizard like (sequential access) or tabbed like (random access): http://www.phpclasses.org/multipageforms There is also this generates a single page using Javascript and DIVs to show you only part of the form at a time and links to switch to other pages: http://www.phpclasses.org/wizard -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Fancy Form processing Ideas
Hello, on 02/14/2005 12:29 PM [EMAIL PROTECTED] said the following: I am looking for interesting approaches to form submissions and error checking in the forms. You may want to try this popular class for generating and validating forms. It provides means to perform common types of validation, but it can be extended with plug-in classes that can provide more specific types of validation. For instance, the class comes with a plug-in to enter calendar dates that lets you specify start and end limits of the accepted dates. It also comes with plug-in to perform CAPTCHA validation (prevent automated access using robots). http://www.phpclasses.org/formsgeneration Here are some screenshots: http://www.phpclasses.org/browse/file/8178.html http://www.phpclasses.org/browse/file/8244.html http://www.phpclasses.org/browse/file/8245.html -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: PHP book recommendations
Hello,. on 02/14/2005 02:37 PM Dave Bosky said the following: I'm looking for an easy to read PHP book that will help me learn a solid foundation in PHP. I'm already familiar with the language but want to make sure I'm coding in the most efficient manner. What's a few of the better books out there? It depends on your is your criteria of a better book. Here you may find reviews of many books of interest to PHP users: http://www.phpclasses.org/reviews/ Here you may find the latest reviews that were published: http://www.phpclasses.org/reviews/latest/latest.html -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: mail() takes a long time to process
Hello, on 02/26/2005 09:25 PM Dustin Krysak said the following: Hi there, I have a script that uses the mail() function, but for some reason the script takes a really long time to finish processing (like 5 minutes). there are some other functions performed (like sql insert, etc) that happen immediately as they should. But the mail takes some time to finish processing. If I remove the mail function, the script finishes immediately. Any ideas? I have included my code below (used for the mail). ideas? Usually this means that the destination server is trying to resolve your machine host name from the IP address and it is not possible because the DNS misses the respective PTR records. This may happen if you are sending messages from domestic (dial-up/ADSL/Cable) Internet account. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] php DBMS
Hello, on 02/28/2005 07:21 PM [EMAIL PROTECTED] said the following: I'm wondering if there is any DBMS, like MySQL, which is (fully) implemented in php. This so you don't have to buy a MySQL database. MySQL is free... MySQL is free for use with applications that are themselves open source. If you're going to use it with a commercial or non-open-source application, you need to buy a commercial license. You are confused. You only need to buy a commercial license if you want to distribute MySQL server itself with closed source applications. If you develop closed source applications but you do not distribute MySQL with them, you do not need to buy any licenses. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Problem submitting a POST request by hand
on 02/28/2005 08:19 AM Vallo Reima said the following: Hello! I send the parameters from one php script to another via POST method. The solution works (see example below) but the receiver page loads ONLY if I include the echo $c; command after send_host (see PROBLEM!!! line). Otherwise a blank page loads without any error messages. The problem is same with Microsoft-IIS/5.1-PHP/5.0.3 and Apache/2.0.51-PHP/4.3.10... What can I do to get rid of this? You may want to try this HTTP client class treats with the HTTP POST requests without problems: http://www.phpclasses.org/httpclient -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: mass emailing on windows server
Hello, on 03/04/2005 01:10 PM Reinhart Viane said the following: Unfortunately I have a windows server hosting that site. Anyone knows how to do mass email on a windows server? You may want to try this class for composing and sending mass mailing messages. It comes with several classes specialized on different types of delivery. The base class uses the mail() function. There is a sub-class for deliverying via SMTP and another for injecting the messages directly in the Windows (2000 or better) pickup folder. If you can use this last one, that would be fastest delivery method. If you can't use it because you do not have enough permissions, the SMTP delivery class is also fine using the SetBulkMail function to hint the class to optimize itself for bulk deliveries. If you do not want to personalize the message bodies for each recipient, the class can perform further optiomizitions and make the delivery even faster. http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Database engine in PHP
Hello, on 03/04/2005 03:45 PM Gerben said the following: I was wondering if there is any DBMS, like MySQL, which is (fully) implemented in php. That is a database engine written in PHP. I know this is not the most effecient way, but I'm not planning to use it for heavy weight database-driven-application. Yes, you may want to take a look at this flat file database manager class that even supports SQL, which seems to be exactly what you are looking for: http://www.phpclasses.org/pdb -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: bulk emailer
Hello, on 03/11/2005 05:48 PM Redmond Militante said the following: i need some advice on making a bulk emailer script more robust. what i'm currently doing: -using mysql_fetcharray() to loop through an array of query results -for each iteration of the loop, get an email address from the current row in the result set, and use it with the mail() function to send out an individual email to that email address, then echo out a confirmation in HTML so that the user will know that an email has been sent -this is repeated for each email address found in the result set problem with this is: with large result sets (some of my result sets come up with a few thousand email addresses), users have to wait a long time for the confirmation messages to print out to their browser, sometimes it seems that not all the messages go through what i've tried: -using mysql_fetcharray() to loop through an array of query results -for each iteration of the loop, get an email address from the current row in the result set, and append it to a long strong called $bcc -then i plug the value of $bcc into the mail() command, which is issued only once at the end of the loop This is a bad idea because many mail systems like hotmail will classify as junk messages that do not come with the actual recipient address in a visible header: To: or Cc: . -this method seems to work better, does not take as long, HTML confirmation messages get printed faster since mail() function is only called once at the end of the loop, only one email is sent (with a long BCC field), so it doesn't bog the server down so much problem with this method is: with large result sets (some of my result sets come up with a few thousand email addresses), the BCC field is so large that it is too large for the mail server to send out has anyone done a bulk emailer script to send out mass emails? if you have any advice re: methodology, i'd like to hear it. It depends on what type of MTA. There is no way to do bulk mailing properly and and avoid long waits. You need to send separate messages to each recipient due to the problem mentioned above. For starters, just stay away from SMTP based solutions if you can. It works but it takes much longer to queue messages that some alternatives because you need to deal with TCP overhead, which is silly when your MTA is in the same machine. The best alternative is to inject the messages in the local mailer queue and tell it to no start delivering the messages immediately. If you can use sendmail (or exim ) there are some switches for the sendmail command for that purpose. Using qmail or postfix does not require any switches. In any case, you may want to try this MIME message composing and sending class. It provides several means to optimize bulk deliveries, personalized or not. You can pick a sub-class to optimize deliveries for the MTA that you use. There are sub-classes for mail, sendmail (or exim or postfix), qmail, SMTP or Windows pickup folder are supported. Regardless of which you use, always call SetBulkMail() function before start looping deliveries to your users. If you are not personalizing message, you can tell the class to cache message bodies between deliveries to avoid message regeneration overhead. If you want to personalize messages, you can even use Smarty as template engine to speedup personalized message generation. There are several examples to demonstrate this: http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: bulk emailer
Hello, on 03/14/2005 06:15 PM Redmond Militante said the following: For starters, just stay away from SMTP based solutions if you can. It works but it takes much longer to queue messages that some alternatives because you need to deal with TCP overhead, which is silly when your MTA is in the same machine. The best alternative is to inject the messages in the local mailer queue and tell it to no start delivering the messages immediately. If you can use sendmail (or exim ) there are some switches for the sendmail command for that purpose. Using qmail or postfix does not require any switches. i have sendmail on this system. anyone have links on how to inject messages into the local mailer queue? Usually you can tell the sendmail program to just queue the messages instead of deliverying them immediately using the delivery mode switch od . If you want to see how that is done, take a look at the sendmail_message_class of this package: http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] php compiler
Hello, on 03/15/2005 03:05 AM Warren Vail said the following: I could be wrong, but I believe that all the Java apps out there are not native binary machine code either? unless you count the JRE (Java Runtime Environment). Seems to me that is the way things are today, with JRE's all having run time configuration. I would prefer to PHP to Java any day. Have you checked out the Road Send compiler? http://www.roadsend.com/ I don't believe it produces pure native binary either, but I could be wrong here as well. It generates a binary that depends only on runtime library provided by Roadsend, which according to them does not use absolutely any code from the Zend engine. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: bulk emailer
Hello, on 03/14/2005 07:37 PM Chris W. Parker said the following: Usually you can tell the sendmail program to just queue the messages instead of deliverying them immediately using the delivery mode switch od . If you want to see how that is done, take a look at the sendmail_message_class of this package: http://www.phpclasses.org/mimemessage Anyway to get it without signing up? There is CVS mirror here. Just follow the instructions for accessing this project by CVS, except that instead of pulling the specified modules, pull only the module mimemessage. It's probably less trouble than signing up the site though: http://www.meta-language.net/download.html#cvs -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: mail() Alternative?
Hello, on 03/23/2005 04:14 PM Dan Joseph said the following: I've had a production system moved to a new server. Our geniuses here have refused to allow sendmail on the server and all my e-mail functions are now gone. Is there a way around this? I have already checked the manual, I don't see anything You may want to try this MIME message class. It comes with wrapper functions that act as direct replacements of the mail() function and let you send the messages by alternative means which can be calling the sendmail program directly or relaying the message to a SMTP server of choice. http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: ISO encoding of subject in mail?
Hello, on 03/29/2005 10:55 AM Kim Madsen said the following: I´d like to encode the subject in mails generated and sent by PHP, so Danish letters like æ,ø and å can be used too... like this: Subject: Problemer med =?ISO-8859-1?Q?f=E6llesdrev_m=2Em=2E?= That is q-encoding. PHP has a function for encoding as quoted-printable but it is not exactly the same thing. You may want to try this class that comes with support to encode headers with q-encoding and it comes with an example to demonstrate that: http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: PHP Tool to answer emails
Hello, on 04/04/2005 08:56 PM Daniel Baughman said the following: I am looking for a php tool that will provide email tracking and a web interface to an email box. Pretty much, we get lots of emails directed to an administrative email account (most of the valid emails) that need response. To the point that one person is getting over whelmed. It would be nice if someone had a tool already made that would check the box, download the email, mark the receipt time, then present them to be answered on a web site for employees, document the answer, etc. etc.. Anyone know of anything? Probably the simplest way to get you started is to make those messages drop in a mailbox accessible by POP3 . Then you can use a POP3 client class like this to fetch the messages that you for your own processing: http://www.phpclasses.org/pop3class If you want to generate automatic responses, you may want to take a look at this other class too: http://www.phpclasses.org/autoresponse -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] php user groups - searching for php developers for a project...
Hello, On Fri, April 1, 2005 7:44 am, bruce said: we're trying to find php developers/partners for a project, and we're wondering if there are php user groups in the cali/bay area (san fran/san jose) area that we can talk with, attend meetings, etc... searching google didn't really turn up anything... we know that there are some php job sites, but we didn't want to post there, given that this isn't a 'salaried' opportunity. this would be strictly startup/sweat equity, ie.. risky as hell!! Here you may find some user groups: http://www.phpclasses.org/browse/group/bycountry/country/us/ -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Locking in PHP (Question for PHP Gurus)
Hello, on 04/06/2005 10:56 PM Cabbar Duzayak said the following: I am using PHP on Apache/Linux with mod_php4. I need to implement a lazy cache for some resource which should be updated say every 1 hour in a way that the first person who arrives after an hour will be updating the cache. As you can imagine, I need to implement a write lock in this case, the idea is: 1. Retrieve the cached data from database (it is cached because generating it is expensive) 2: If (now() - cache update date) 1 hour, try to get a lock on some resource 3.a: If lock is acquired, regenerate the cache, update it in the db, unlock the resource, return 3.b: If lock can not be acquired, just display the version retrieved from cache in step 1 and return This will be slightly different in case of mysql (i.e. lock is blocking in mysql), but I guess you get the idea. In this case, there are two types of locks I can use it looks like: i) File locking: You can try to lock a file in non-blocking mode ii) Use mysql lock/unlock table to manage the locking mechanism, i.e. create some dummy file. I use this all the time with PHP under Apache 1.x for caching all sorts of data coming from the database: content, user profiles, sessions, everything. It works wonders. The speedup is enormous because accessing a file on disk is much faster than executing a SQL query even when the database server caches queries. flock() is not slow at all. That is a myth. You just should pay attention that you must do everything the same way. There can only be one process locking the file exclusively for writing but there can be many processes accessing the file in shared mode. As long as you are not updating a file literally on every second, the flock contention time is neglectable. To simplify generic file caching using flock to prevent that concurrent accesses corrupt a cache file being updated, I use this class store arbitrary data in cache files. It assures that the cache files are updated only when there is one process trying write them. This very same site on which the class is available uses the class to cache everything for several years. Currently it is holding more than 80,000 cache files that occupy over 400 MB. The good thing about caching practically everything is that you can avoid even establishing database connections once the cache files are upto date. This makes your site handle access surges much better, as the excess of Web server processes that are created does not lead to new database connections. http://www.phpclasses.org/filecache To do what you want, just set the expiry time of your cache files to 3600 seconds. The class also supports preemptive cache invalidations, meaning, it can safely invalidate a cache file in order to force that it needs to be regenerated next time it is accessed. Maybe you do not need this, but I use that feature all the time to force the cache for a page or something else to be redone after the site updates the database information from which the cached data was taken. For instance, you are caching the content for an article page. If that article is updated, you invalidate the cache, so next time the article page is accessed the cached content is always refreshed. I would prefer File Locking since it support non-blocking locks and would definitely be faster than mysql, but I see 2 problems with this: 1. What happens if the php code that locked this file (probably the PHP thread in Apache, if mod4php supports threading) throws an error or dies! Will it be automatically unlocked? Or since I am using mod_php4 and the thread is somehow alive, the lock will be there for a long time? AFAIK, PHP implicitly closes opened files on exit and so any outstanding file locks are released. 2. The following warning from php manual: On some operating systems flock() is implemented at the process level. When using a multithreaded server API like ISAPI you may not be able to rely on flock() to protect files against other PHP scripts running in parallel threads of the same server instance! This warning is mute because most people is not running PHP with multi-thread mode servers (read MS IIS or Apache 2). The problem is that several PHP extensions are not reentrant and so they can't run reliably in concurrent threads. So, since you are most likely using PHP in non-multithreaded server (Apache 1.x or something else using PHP CGI executable) never mind what the manual says about flock(). -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Amazon/eBay API
Hello, on 04/15/2005 01:56 PM Brian Dunning said the following: Does anyone know of any PHP classes for processing the Amazon or eBay XML feeds? Here you may find classes to provide API to acess Web servers of many sites including Amazon and eBay. http://www.phpclasses.org/browse/class/33.html -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: processing email
Hello, on 04/15/2005 11:17 PM Florin Andrei said the following: I want to write an application that's almost like a webmail, but not quite. It must receive emails from several mailing lists, store them in a database, allow making annotations, provide some kind of accounts with passwords, etc. It's quite specialized, it cannot be used as a webmail proper, nor a webmail can be used instead (and that's why i'm writing it). But i do not want to reinvent the wheel. Are there any PHP libraries or something to process email? E.g., for things like here's the message, separate the headers from the body and do something different with each other item or find a discussion thread in these emails if i give you the headers of each message. Things like that. BTW, i will use PHP-4.3 You may want to start to use POP3 to fetch any messages that you want to be processed. Here you may find one POP3 class for that purpose: http://www.phpclasses.org/pop3class -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Flash integration with PHP
Hello, on 04/25/2005 06:17 AM Khuram Noman said the following: I want to develop a shopping car in flash using php so there any good tutorial or sample code that explain the flash integration with php It depends on what you mean by Flash integration. Here you may find several classes that provide different kinds of Flash integration: http://www.phpclasses.org/browse/class/102.html -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: phpclasses formerly Flash integration
). That option is on by default for logged users and can be changed in the user options page. I do not advertise this option much because most users do not mind that much seeing the advertising. Since this kind of ads are those that pay more, I think it would not be a good idea to bring attention to an option to disable something that many users would not mind. Keep in mind that this option will only be accessible to all users until the paid subscriptions are made available. After that only paid subscribers will be able to disable it. Until then you can enjoy it for free. BTW, anybody willing to participate in the beta testing of the paid subscription services, feel free to contact me privately so I can let you know first and you can participate in the tests (at no cost of course) before the paid services are officially launched. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] phpclasses formerly Flash integration
Hello, on 04/25/2005 11:52 AM Ryan A said the following: On 4/25/2005 4:31:42 PM, Chris Ramsay ([EMAIL PROTECTED]) wrote: I must admit, I agree with Ryan A's points - I used to visit the site regularly, but the ads and stuff have put me off a little bit these days... The main reason I am so pissed right now is, I recommended the site to a pal of mine who is starting on php (with just a book and a few web links, i told him to join the list if he has probs) and he downloaded that cursorware or whatever from phpclasses...then i had to help him get the crap off his machine by following these links: http://www.pchell.com/support/mywebsearch.shtml http://www.pchell.com/support/cursormania.shtml http://www.pchell.com/support/funbuddyicons.shtml http://www.pchell.com/support/smileycentral.shtml http://www.pchell.com/support/mymailstamp.shtml http://www.pchell.com/support/mymailstationery.shtml http://www.pchell.com/support/mymailsignature.shtml http://www.pchell.com/support/popularscreensavers.shtml I am so sorry that your friend clicked on those ads and downloaded that software, but for the record the PHP Classes does not serve any of those downloads. As a matter of fact those ads are intermediate pages served by the advertising agency company. When you click on the ads you are lead to another site noticed in your browser URL bar. If you do not click on the ads for 10 seconds nor click on the link in the top of the ad page that brings you back to the site, you are never prompted for any downloads. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: phpclasses formerly Flash integration
that they face. /snip And I appreciate you taking the time to answer my criticisms, I hope my suggestions are viable to you although i somehow dont think you would think so. Yes, it is not like you are asking for the heaven, but maybe what you want will take some time to provide. snip I recommended the site to a pal of mine who is starting on php (with just a book and a few web links, i told him to join the list if he has probs) and he downloaded that cursorware or whatever from phpclasses...then i had to help him get the crap off his machine I am so sorry that your friend clicked on those ads and downloaded that software, but for the record the PHP Classes does not serve any of those downloads. As a matter of fact those ads are intermediate pages served by the advertising agency company. /snip I think thats a pretty poor excuse because you know quite well what the ad company is going to be serving on YOUR sites pages, those full page ads are *only* displaying the screensavers or icons from those junk companies that are installing spyware. Would you say the same thing if they were serveing _hardcore porn_ pictures from there? It seems you are not familiar with how these ad agencies work. Let me explain. All I do is to place some HTML tags to make the ads be fetched and displayed in the site pages. From then on, it is up to the agencies ad servers to show the ads. Usually they make the ads appear as soon as the advertisers order their campaigns. I have some controls to automatically exclude certain types of campaign, like for instance campaigns Provocative content, ads with audio or video, etc... AFAIK, there are no controls to exclude campaigns that lead to downloading and installing spyware. I do not think that any of the advertisers really do that or else they would probably have been excluded by the ad agencies. If you are certain that there was an ad displayed in the PHP Classes site lead to download and install spyware, I would appreciate any information about the ad so I can complain to the respective ad agency and ban such ads from the site. The bottom line is this: you can easily reduce the number of ads on that site without hurting yourself in any way, but you have decided to take the RIAA way and thump the very people who made your product a success just because you can and greedyness.. but please correct me if I am wrong.anybody? You are jumping to conclusions because in reality you do not know exactly how things work. For now, the site needs the ads to survive, maybe that will change in the future. Until then, the users will have to be patient. -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: XML language for database schema definitions
Hello, on 04/27/2005 10:04 AM Nsk said the following: I am developing a PHP-implemented library which would allow a PHP programmer to write pre-defined data to a database. The library would be able to work with different database schemas and I need a way to inform the library with what kind of database schema it has to work with. I thought a good way to do that would be to describe the database schemas in XML. Because I don't want to write a new DTD just for this application, do you have any idea whether a database schema definition DTD already exists which allows XML documents to describe how a database is structured? That is an old idea introduced by Metabase in 1999: http://www.phpclasses.org/metabase -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Starting a big project
Hello, on 05/01/2005 01:45 PM Danny Brow said the following: I'm about to start writing a big web app (mostly in PHP). But I'm not sure if I should layout the DB first then write the app, or should I just start writing the app and add stuff to the DB as I need it. How do you guys go about it? If you want to implement a big project you should first make some analysis and plan it before going ahead to the implementation. For big projects, use case partioning is trongly encouraged. If you do not know what that is, I strongly encourage reading this book. It succing and straight to the point to get you started quickly. http://www.phpclasses.org/reviews/id/0201309815.html When you finnaly come to the point of an implementation, I suggest a model driven object oriented approch. This means that instead of hand coding all the tables and SQL by hand, you should design a model of the entities of information of your project and use an object-relational mapping tool so in your application you treat every entity as objects: clients, products, transactions, etc.. Everything is an object, as opposed to sparse data in database. Then let the object relational tool do the tedious job storing and retrieving data from a relational database with SQL. For this purpose, I suggest you use a tool like Metastorage, especially because your project is big. It will let you model your business objects and generates all access code and database schema in seconds. This will be very good for you because it will let you try different models that can be changed and regerated quickly until you figure the right model for your needs and keep changing it later if necessary. http://www.meta-language.net/metastorage.html -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: need class to send email w/attachments
Hello, on 05/06/2005 01:44 PM Dave Bosky said the following: Any recommendations for PHP classes that will send email messages with attachments? This one is very popular and lets you send messages with attachments from local or remote files or from dynamically generated strings, with automatic detection of file type and special support for working around any PHP settings that could cause file mangling or data corruption. It can send message using the mail function or other delivery methods (SMTP server, sendmail, qmail, postfix, exim, Windows pickup folder, etc..) http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] ANNOUNCE: Metastorage object persistence API generator
Hello, Finally I made time to release a full blown application based on MetaL compiler persistence module. Here is the release announcement that may also be found on the site: http://www.meta-language.net/news-2002-12-05-metastorage.html _ Released Metastorage generator Manuel Lemos, 2002-12-05 16:11:44 GMT Metastorage is an application that is capable of generating persistence layer APIs. It takes a component definition defined in the Component Persistence Markup Language (CPML), a XML based format, and generates classes and storage schemas in a given target programming language. Using CPML, developers can focus their efforts on the modeling of data structures that hold the information and the relationships between the entities that their applications deal with. Metastorage takes care of generating all the necessary code to store and retrieve such data structures from persistent storage containers like relational databases. The main goal of Metastorage is to drastically reduce the time to develop applications that traditionally use on SQL based relational databases. The generated APIs consist of a sets of classes that provide an Object Oriented interface to the objects of the classes modeled using CPML. The generated APIs are also capable of installing the data schema in the persistence container, which in the case of a relational database is the set of tables that will hold the persistent objects. This completely eliminates the need to write any SQL queries manually. CPML is independent of the type of persistent container. This means that while it can be used to model classes of persistent objects that may be stored in relational databases, such objects may as well be stored in other types of persistence containers. For instance, if an application needs to move a directory of objects with user information from a relational database to a LDAP server to increase the application scalability, the same CPML component definition would be used. Metastorage would then generate classes objects that implement the same API for interfacing with a LDAP server that is compatible with the API generated to interface with relational databases. This make the migration process easier and with reduced risks. Another possible benefit of the persistence container independence of the APIs generated by Metastorage, is the case where an application may need to run in environments where a SQL based database server is not available. In that case the same API could be generated to store persistent objects in flat file databases or plain XML files. For now, the current version of Metastorage only supports the generation of PHP code based on the database independent Metabase API. This means that it may also interface with PEAR::MDB database abstraction layer using its built-in Metabase API wrapper. In consequence, many types of relational databases are already supported. Since this is the first release of Metastorage, there is plenty of room for improvement in the possibilities of the generated persistence APIs and the level of optimization of the generated code. In the future it will be supported other languages besides PHP, other database APIs besides Metabase and other persistence containers besides relational databases. Metastorage is based on MetaL compiler persistence module. Like MetaL, Metastorage is Open Source and is distributed with BSD like software license. Downloadable archives and documentation with an example of component definition are available from the MetaL site. -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] ANNOUNCE: Metastorage object persistence API generator
Hello, Finally I made time to release a full blown application based on MetaL compiler persistence module. Here is the release announcement that may also be found on the site: http://www.meta-language.net/news-2002-12-05-metastorage.html _ Released Metastorage generator Manuel Lemos, 2002-12-05 16:11:44 GMT Metastorage is an application that is capable of generating persistence layer APIs. It takes a component definition defined in the Component Persistence Markup Language (CPML), a XML based format, and generates classes and storage schemas in a given target programming language. Using CPML, developers can focus their efforts on the modeling of data structures that hold the information and the relationships between the entities that their applications deal with. Metastorage takes care of generating all the necessary code to store and retrieve such data structures from persistent storage containers like relational databases. The main goal of Metastorage is to drastically reduce the time to develop applications that traditionally use on SQL based relational databases. The generated APIs consist of a sets of classes that provide an Object Oriented interface to the objects of the classes modeled using CPML. The generated APIs are also capable of installing the data schema in the persistence container, which in the case of a relational database is the set of tables that will hold the persistent objects. This completely eliminates the need to write any SQL queries manually. CPML is independent of the type of persistent container. This means that while it can be used to model classes of persistent objects that may be stored in relational databases, such objects may as well be stored in other types of persistence containers. For instance, if an application needs to move a directory of objects with user information from a relational database to a LDAP server to increase the application scalability, the same CPML component definition would be used. Metastorage would then generate classes objects that implement the same API for interfacing with a LDAP server that is compatible with the API generated to interface with relational databases. This make the migration process easier and with reduced risks. Another possible benefit of the persistence container independence of the APIs generated by Metastorage, is the case where an application may need to run in environments where a SQL based database server is not available. In that case the same API could be generated to store persistent objects in flat file databases or plain XML files. For now, the current version of Metastorage only supports the generation of PHP code based on the database independent Metabase API. This means that it may also interface with PEAR::MDB database abstraction layer using its built-in Metabase API wrapper. In consequence, many types of relational databases are already supported. Since this is the first release of Metastorage, there is plenty of room for improvement in the possibilities of the generated persistence APIs and the level of optimization of the generated code. In the future it will be supported other languages besides PHP, other database APIs besides Metabase and other persistence containers besides relational databases. Metastorage is based on MetaL compiler persistence module. Like MetaL, Metastorage is Open Source and is distributed with BSD like software license. Downloadable archives and documentation with an example of component definition are available from the MetaL site. -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Metastorage generates Entity-Relationship class diagrams in UML
Hello, As announced last week, Metastorage is an application that generates customizable APIs made of classes that store and retrieve objects stored in persistent storage containers like for instance relational databases. The generated code uses Metabase API and consequently supports PEAR::MDB via Metabase API wrapper. In addition to that, the current version is also capable of generating automatically Entity-Relationship graphs using UML to present diagrams of the generated classes. The generated Entity-Relationship graphs are described in the DOT language format. This format is used by the Graphviz software package from ATT research labs. The DOT file can be rendered in many common image formats using Graphviz tools to generate a graph image. An example of an Entity-Relationship UML diagram generated by the program from a component example definition is included in the Metastorage documentation. Here you may find the complete announcement with example graphics and the relevant links: http://www.meta-language.net/news-2002-12-09-metastorage.html -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Mass Mailing
Hello, On 12/21/2002 08:10 PM, Jonathan Chum wrote: An upcoming project I'm working and spec'ing out is a mass mailing application. Initially, I was looking at Mailman which was written in Python since it looks like it handles delivering emails efficiently without killing the server. We have 1 client able to send 110,000 emails at 6.5K avg per week on PIII 800 with 128 MB RAM using Mailman. The inteface however is very bad and we'd like to develop other features like text ads, tracking, templates, etc. This would require writing a wrapper around Mailman in PHP. I was considering of writing the mass mailing application in PHP instead though. If anyone has eperience writing such applications with this amount of emails, I'd like to know what you've done. If you do not need to send personalized messages (messages that differ for each recipient), just put all recipients in a BCc: header and send a single message to the local mailer queue (not via SMTP). If you do not care for the users that bounce messages, just make the return path be black hole email address. OTOH, if you care about bounces (you should if you mailing list is large or is not clean), consider using ezmlm, which is a mailing list manager than among other things takes care of bounce messages thanks to qmail VERP. I was told that is the one that eGroups hacked to use in the now known YahooGroups site. Once I built a small Web interface for ezmlm. It was meant just to create and edit several mailing lists meant to be used as newsletter for a portal with many sites. Is simple but it already comes with a SOAP interface to manage the mailing list subscribers remotely. http://www.phpclasses.org/ezmlmmanager I'm thinking of coding the front end in PHP that will put the email into a queue table that will force a command line PHP script listening on a particular port to scan the database for this new task in queue. Once it picks up the task, the timeout for this application to run will be set to infinite. It'll establish a SMTP socket either to a really beefed up mailing list server or the localhost SMTP server to begin blasting out these emails. From what I understand, it's better to blast emails via an open socket connection to SMTP rather than looping through Sendmail. Is this the right thing todo? No, queuing via SMTP is the slowest way to send messages. Your script should not bother to deliver the messages to the recipients SMTP servers. Delivery can take hours or days to finish due to network congestions and hard to conect SMTP servers. Just queue the messages in the local mailer and let it take care the actual delivery. I would recommend a qmail based system anytime, with or without ezmlm on top. In a production system that I manage, it just takes 3 seconds to queue a alert message to be sent to 50,000 via a local qmail server. You can also use sendmail almost as fast using the queue only mode. Some people think that sendmail is slow and many forks processes because they are not aware of how to configure it to queue the messages the fastest way that is possible. You may want to look into this class that has a sub-classes for delivering with sendmail program directly instead of using the mail(). It lets you configure the sendmail delivery mode. There is also a sub-class for delivering with qmail. http://www.phpclasses.org/mimemessage I've also heard that PHP is not good for writing mailing lists application, but Mailman is written in Python and it's able to send thousands of email just fine. Any thoughts on this? When people do not know how to do it properly, they blame it on the software. Note down: *smart software always beats fast software*. Sure you can use a faster language like C (not Python), but if you develop smart software in PHP it can be almost as fast as a similar solution in C and does not take an etternity to develop and debug. -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Mass Mailing
class seems to be better for sending mass mailings as it queues up the email into Sendmail without opening/closing the connection for Actually the class provides different delivery methods that maybe appropriate in different circunstances: mail(), sendmail, qmail and SMTP. SMTP is the slowest for queuing but it is the fastest for direct delivery. My SMTP class supports direct deliveries which is great to deliver urgent messages as they are not relayed to the local mailer. It delivers to the recipient SMTP server and you will know if the message was accepted right away. I use this to deliver password reminder and other messages that users of my sites are anxious to receive because the local mailer queue may be loaded at the moment with some long delivery. each recepient. phpmailer.sourceforget.net has that problem of opening and closing a connection, yet they claim to receive good results of up to 40,000 emails per hour. Another software using that class was able to send 500,000 emails in 10 hours. You should not consider any delivery statistics because all depends on factors that have nothing to do with the software you use, like the outbound bandwidth, remote server reachability, anti-spam reception delays, temporary messages refusals (mailbox full, blocked account, etc..). If injecting the emails directly into Qmail (Sounds to me that Qmail is far better for email deliver than to be using Sendmail) vs using SMTP, then DJB software rules! BTW, consider using DJBDNS cache to reduce DNS server lookup time. that'll be the approach. The only reason I'd would be using SMTP is to keep the code and data (on MySQL) stored on one machine and when it's time to blast out an email, it'll establish a connection to a SMTP server assigned to the list to deliver the email. In that case, you may consider QMQP relay which is a protocol that lets you rely entire mail queues from a server to another. This is recommended when you have many busy mailing lists served from one machine and you can use more servers do the actual delivery. I think only qmail and ezmlm support QMQP. Though if the code was written to sit on each server that scans for pending tasks, it'll pick up it's job from a master database server and then directly injecting Qmail locally. That is what qmail does. The software app I'm writing is expected to have many users with small to very large lists. I'm trying to spec this out so that it scales well and with the fastest delivery. From what I'm hearing from you and from the first guy's reply to this thread, inject the email into Qmail is the quickest way. Yes, qmail was thought for that. Yahoogroups use it and I have also used when I worked in a large portal with many subscriber newsletters as I mentioned. We had some very large like for MTV Brasil that had almost 400,000 subscribers. The greatest problem that made me learn some hard lessons is that it is very problematic if you start with subscribers list that are not clean up of no longer valid users. Once you start delivering messages to those addresses, you get a flood of bounces that pratically stop your server queue. The MTV newsletter was weekly, but that affected the newsletters of other sites that were stopped during the MTV newsletter bounces. Since ezmlm does not unsubscribe bouncing addresses right away, the solution was to remove bouncing subscribers using an external validation procedure. I used this other class for the cleanup. After that it was a breeze. We had peaks of 10,000 messages sent per minute. http://www.phpclasses.org/emailvalidation -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Email problems.
Hello, On 12/22/2002 11:29 AM, Steve Jackson wrote: I have generated a page on our server using PHP (from within a CMS system) which I renamed the output .html to use in an html email. My problem is when I cut and paste the HTML into the email (Outlook) it either: displays the code, displays the html email and then when it's sent, sends it as an attachment or sends it as a bunch of html links and badly formatted text. I assumed (badly) that Outlook would simply send HTML emails if you formatted the program to send html emails but this seems almost impossible. Anyone have any suggestions? This is the page I want to send: http://www.violasystems.com/e-news/template.html You may want to try this class for composing messages that lets you add parts from files. Just specify the URL as filename: http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Flow diagrams.
Hello, On 12/26/2002 05:18 PM, Sridhar Moparthy wrote: Do you know how to prepare and display process flow diagrams dynamically based on some data from database. I have information about some processes in the database that tells different process dependencies. I need to display that information as a process flow diagram. You may want to look at Metastorage that draws graphs of classes of objects that are stored in a database: http://www.meta-language.net/news-2002-12-09-metastorage.html http://www.meta-language.net/metastorage.html -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Flow diagrams
Hello, On 12/27/2002 06:00 PM, Sridhar Moparthy wrote: I have information about some processes in the database that tells different process dependencies. I need to display that information as a process flow diagram. Do you know how to prepare and display process flow diagrams dynamically. Do you know anything like JPGraph or Java script or java applet that can do this? If so Please help me. As I explained before, you may want to take a look at Metastorage. Among other things it generates graphs in UML that represent a diagram of classes that are mapped to database tables. http://www.meta-language.net/news-2002-12-09-metastorage.html http://www.meta-language.net/metastorage.html Metastorage generates the graphs that can be rendered in many common image formats using ATT GraphViz package. GraphViz takes a description of the nodes and the edges of the graphs and renders them in target image format. In the pages above there are some links to the relevant GraphViz pages. -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: mail attachments
Hello, On 01/02/2003 12:07 PM, Edward Peloke wrote: I hope you all had a great New Year. Is attaching a document to an e-mail simply a matter of adding a new header in the mail function? No, but if you try this class it becomes much easier than it is doing it manually: http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Using mail() for mailist list app
Hello, On 01/01/2003 08:46 PM, Monty wrote: Is the PHP mail() command robust enough to use in a little mailing list app? Sure, it just calls sendmail, so it is just as robust as sendmail as long as you configure it properly. The app will basically send an HTML or Text e-mail to the member database of about 6,000 people. I'm using RedHat Linux 7.2 with PHP 4.2.2, by the way. I'm concerned I'll bog down my server if I issue the mail() command 6,000 times on our server, but, maybe it won't be a problem? Since you used RedHat Linux, the default mailer is sendmail so you need to configure the deliveries to just queue a single message without attempting to deliver them right away. You need to put all recipients in Bcc: to just need to queue a single message. It is very fast, think about just a few seconds. You probably take more than that extracting the addresses from the database. Also, although I'm sending HTML e-mail, I'm not including attachments or inline graphics (only direct hotlinks to graphics on a web server). Will mail() still work okay for this, or do I need to use one of the various PHP e-mail classes available to send HTML e-mail? Yes, but HTML messages need to have an alternative text part or else spam filters may reject it. So it is always recommended that you build your system on existing components that have been throughly tested to compose messages adequately. In that case you may want to try this class that lets you compose and send messages not only with alternative text and HTML parts but also embedded images for the HTML part if you want and attachments. Since you need to use sendmail, there is also a sub-class to make deliveries using sendmail program directly so you can set delivery mode SENDMAIL_DELIVERY_DEFERRED to eliminate the queue time. http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Timeout during SMTP operation.
Hello, On 01/02/2003 06:02 PM, Gilrain wrote: I've just finished a PHP/MySQL mailing list. Basically, I'm having problems with my sendmail function. It takes an array of e-mail addresses ($addresses) and loops through it, e-mailing each one using an SMTP class I found (the only identifying comment in it is SMTP Class By TOMO (2001/09/14)). The problem is, it's very slow. The typical array of addresses sent to this is 100 to 500 elements large. The actual mailing list has over 7000 members, but the e-mails are sent out to a geographical region. Ideally, though, this function should be able to handle mailing to the entire member base. Here's the offending function (with private stuff altered). Currently, it will only send to about 50 of the addresses before Internet Explorer times out and cuts it off (perhaps five minutes or so). Note that this is without catches, so it skips to the 'else'. If I comment out the sending part, as shown, the operation takes a split second and the log is written correctly, so I know the problem lies in the sending of the mail. The only solution I can think of is to make the user send things in chunks of 50 or so addresses, but I'd like to avoid this inconvenience if I can. Any ideas? Using SMTP to deliver messages is a bad idea unless you do not have an option, like you are under Windows. Under Unix/Linux it is better inject the messages in the local mailer queue and have it to do the bulk delivery. In that case you may want to try this class that comes with sub-classes that let you configure details of delivery depending on your local mailer. http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: 2 servers for mail implementation
Hello, On 01/03/2003 01:11 AM, Roger Thomas wrote: dear all, i have 2 servers that were *given* to me to setup and implement webmail solution for our client. i have done some groundwork in terms of the backend applications that are needed to do this. what i wanted to know is, how best can i distribute the backend applications between those 2 servers to achieve a balance and fast response. can i go like this: server A ldap courier-imap server B apache php qmail No I suggest that you use just one server the Web and receiving e-mail and the other server for delivering e-mail. In the Web server configure qmail smtproutes control variable pointing to the other server that will only allow relaying messages from the Web server. -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Mass-mailing method
Hello, On 01/03/2003 04:08 AM, Cesar Aracena wrote: I did a registration page for a customer, and now I'm trying to develop a way for him to send an e-mail once in a while to the people registered with him. I did something (shown below) and everything seems to be ok, but the e-mail never reaches... Can someone find the problem or maybe point me to something already done to send multiple e-mails as BCC??? I think Bcc: addresses have to be separated with commas (,). If that is not the problem, you may want to try this class that has built-in some workarounds that solve non-obvious quirks of using the mail() function. I use it to deliver in average 2 million message a month most of them with tens of thousands of recipients in Bcc:. http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: How to attach a file to mail()
Hello, On 01/03/2003 11:40 AM, Föíö Öxîêójînyóon wrote: mail($to, $subject, $body, From: $email); how do I insert an attachment into this mail function, It would be submitted with file field and would be called attachment. You may want to try this class. All you need to do is to pass the file name of the uploaded file to add as an attachment: http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: FW: [PHP] How to get the mail sending stuff to work on Win2k?
Hello, On 01/05/2003 10:37 PM, Rad Craig wrote: I run ArgoSoft's mail server which has worked great. I use SMTP authentication, could that be the problem? Is there a way to setup the info for SMTP authentication in PHP so it can pass it to the mail server during it's sendmail type functions? No, PHP mail() function does not support authentication. You may want to try this class that comes with a wrapper function named smtp_mail() that emulates the mail() function by sending the message via SMTP. It les you configure the authentication credentials among other things that the mail() function does not support: http://www.phpclasses.org/mimemessage To send via SMTP you also need this: http://www.phpclasses.org/smtpclass -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Strange problem with MAIL
Hello, On 01/06/2003 08:22 AM, Cesar Aracena wrote: I've been trying to make my way around a complex mailing system for the past couple of days with no success, but now I noticed that I can't just send a simple: mail([EMAIL PROTECTED], My Subject, Line 1\nLine 2\nLine 3); I used to make this scripts work all the time before using the same hosting but something changed now... is there a way to see what's going on using phpinfo.php or other way??? mail() is a problematic function that often fails without a clue. Sometimes it is a problem in PHP configuration, some times it is a problem in the actual mail implementation and other times it is a mail server problem. I think what is more important to start having an idea is for you to tell if you are hosted under Unix/Linux or Windows. -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Strange problem with MAIL (Correction)
Hello, On 01/06/2003 08:33 AM, Cesar Aracena wrote: I just checked my hotmail account (one of three I'm sending to) and all the emails arrived correctly (sorry for the re-post) but it's not reaching the other two. One of them, I know it has a very poor configuration and can hardly receive e-mails from PHP scripts, but the other one usually works correct (the one I have with the hosting)... Can anyone tell me what are the headers sent usually so mostly everyone can receive the mails? Sometimes the problem is in the type of hosting platform that you are using but you did not tell if it is Windows or Unix/Linux. Anyway, I do not use or recommend mail() function directly at all. I use this class to compose and send messages. It has already some built-in workaround to many flaws of the mail() function depending on your platform. I do not know if your problem is just headers but this class puts all the headers that should be there. It also provides mail() function replacement functions that use different delivery methods which often is a problem depending on your platform. http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Dreaded Return-Path and mail()
Hello, On 01/06/2003 09:37 AM, Monty wrote: Is there anything else I can try? I want to avoid changing this in the PHP.ini file because I don't want e-mail from all domains to look like it is coming from a single domain, if possible. I think you are doing something wrong because that works well as long as you use PHP 4.0.6 or higher. You may want to try this class and just define the Return-Path header like any other message header. The class will make sure it will work for your setup or else it will return an useful error message. http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: mail() not working on Win2k
Hello, On 01/06/2003 01:21 PM, Rad Craig wrote: I'm running under Win2k, new install of PHP(last week), I have been trying to test the mail() function, but it doesn't seem to work. I host my own mail server on the same machine and I know it works, has been for months, all other mail come/goes just fine. I don't have the default SMTP server for IIS installed since I have my own SMTP/POP3 mail server on this same server. I have tried it with the following: mail([EMAIL PROTECTED], test message, this is a test); I have SMTP authentication turned off on my mail server for this testing. It never arrives, I never get an error. I can telnet to port 25, all works fine. phpinfo.php reports that everything looks good, only thing i saw was that the extension directory shows c:\php4 instead of c:\php. I don't have any extra .dll's or anything turned on since it has built-in support for MySQL. Have you tried this alternative as I suggested in this other message to you? Many people solved their problem with it, so can you. http://news.php.net/article.php?group=php.generalarticle=130351 -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: mail() not working on Win2k
Hello, On 01/06/2003 08:46 PM, Rad Craig wrote: I can't use that as the program that I need for the email to work with, I don't have access to it's mail() function...yet. As I explained, the class comes with a wrapper function named smtp_mail() that emulates mail() function (but without the bugs). All you need to do is to replace mail() calls by smtp_mail() calls including smtp_mail.php where needed. Even if you do not want to replace anything, you can still try the class test scripts to see if it works for you. If it doesn't, it will provide helpful error messages unlike the mail() function. Now it is up to you if you want to progress in solving your problem. Regards, Manuel Lemos -Original Message- From: Manuel Lemos [mailto:[EMAIL PROTECTED]] Sent: Monday, January 06, 2003 4:28 PM To: [EMAIL PROTECTED] Subject: [PHP] Re: mail() not working on Win2k Hello, On 01/06/2003 01:21 PM, Rad Craig wrote: I'm running under Win2k, new install of PHP(last week), I have been trying to test the mail() function, but it doesn't seem to work. I host my own mail server on the same machine and I know it works, has been for months, all other mail come/goes just fine. I don't have the default SMTP server for IIS installed since I have my own SMTP/POP3 mail server on this same server. I have tried it with the following: mail([EMAIL PROTECTED], test message, this is a test); I have SMTP authentication turned off on my mail server for this testing. It never arrives, I never get an error. I can telnet to port 25, all works fine. phpinfo.php reports that everything looks good, only thing i saw was that the extension directory shows c:\php4 instead of c:\php. I don't have any extra .dll's or anything turned on since it has built-in support for MySQL. Have you tried this alternative as I suggested in this other message to you? Many people solved their problem with it, so can you. http://news.php.net/article.php?group=php.generalarticle=130351 -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: test_smtp.php
Hello, On 01/07/2003 08:37 PM, Rad Craig wrote: I'm trying to implement this smtp_email stuff. I'm running Win2k, ArgoSoft Mail Server Pro, PHP 4.3.0, MySQL, etc. I downloaded everything on these pages: DNS Resolver: http://www.phpclasses.org/browse.html/file/1910.html You won't need this unless you are doing direct delivery which is not your case because you want to relay the messages in your local server. MIME: http://www.phpclasses.org/browse.html/package/9.html SMTP: http://www.phpclasses.org/browse.html/package/14 I'm sorry, but I'm a newb, so I have no idea what I'm doing with PHP. I created a \includes directory under my main PHP directory and my include path in the .ini file points there. I copied all of these files there except for the test_*.* files. I host my own mail server on the same machine. I then loaded up the file test_smtp.php in an editor and started filling in some blanks, like: $to - changed this to my email address $smtp-user - changed this to my email username $smtp-realm - changed this to my domain name $smtp-password - changed this to my email password I left everything else alone except changing $smtp-debug=1 after it didn't work the first time. My mail server requires authentication. I didn't receive any email, nor any output in the browser when I run that test page. Looks like it should give me SOME sort of feedback whether it succeeds or fails at the bottom, apparently it's never getting that far. To let you see anything, it is better to try this script from the command line (DOS prompt) using the PHP standalone executable (CGI/CLI) that is in your PHP installation directory named php.exe Then just do php.exe -q test_smtp.php Anyway, it is better to solve your problem to try the test_smtp_mail.php script instead. -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Re: Need a suggestion on developing a php-related system
Hello, On 01/08/2003 03:40 AM, Kelvin Poon wrote: HI, I am new to PHP and I am just wondering if anyone could give me some help. I am currently working for infomart.ca, it is basically a company that sells articles (news/business). MY employer require me to develop a system using Perl and PHP, and the assignment is as follow: To develop a system that collects, stores, processes and disseminates internally the updating status of our databases. We currently have over 200 databases from various daily newspapers, magazines, TV transcripts and other periodicals. Most of them are updated every weekday between 4a.m. and 7a.m.. Others are updated on a weekly or monthly basis. THe update schedule Tv. the actual status need to be captured and made available to internal staff. This is similar to the flight departure/arrival information in an airport. This is vague. What do you mean exactly by captured and made available to internal staff? Do you mean aggregate from somewhere to a central place? Anyway, news feed compilation and aggregation leads to XML-RDF-RSS. -- Regards, Manuel Lemos -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php