Variable passed to each() is not an array or object


Posted on 16th Feb 2014 07:03 pm by admin

Hi,

This is a email a friend type of form, and it isn't working anymore.

Did you know?Explore Trending and Topic pages for more stories like this.
<?

function validate_email($email, $location) {
$valid_address = true;

$mail_pat = '^(.+)@(.+)$';
$valid_chars = "[^] ()<>@,;:.\"[]";
$atom = "$valid_chars+";
$quoted_user='("[^"]*")';
$word = "($atom|$quoted_user)";
$user_pat = "^$word(.$word)*$";
$ip_domain_pat='^[([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3})]$';
$domain_pat = "^$atom(.$atom)*$";

if (eregi($mail_pat, $email, $components)) {
$user = $components[1];
$domain = $components[2];
// validate user
if (eregi($user_pat, $user)) {
// validate domain
if (eregi($ip_domain_pat, $domain, $ip_components)) {
// this is an IP address
for ($i=1;$i<=4;$i++) {
if ($ip_components[$i] > 255) {
$valid_address = false;
break;
}
}
}
else {
// Domain is a name, not an IP
if (eregi($domain_pat, $domain)) {
/* domain name seems valid, but now make sure that it ends in a valid TLD or ccTLD
and that there's a hostname preceding the domain or country. */
$domain_components = explode(".", $domain);
// Make sure there's a host name preceding the domain.
if (sizeof($domain_components) < 2) {
$valid_address = false;
} else {
$top_level_domain = strtolower($domain_components[sizeof($domain_components)-1]);
// Allow all 2-letter TLDs (ccTLDs)
if (eregi('^[a-z][a-z]$', $top_level_domain) != 1) {
$tld_pattern = '';
// Get authorized TLDs from text file
$file_t = $location . "functions/tld.txt";
$tlds = file($file_t);
while (list(,$line) = each($tlds)) {
// Get rid of comments
$words = explode('#', $line);
$tld = trim($words[0]);
// TLDs should be 3 letters or more
if (eregi('^[a-z]{3,}$', $tld) == 1) {
$tld_pattern .= '^' . $tld . '$|';
}
}
// Remove last '|'
$tld_pattern = substr($tld_pattern, 0, -1);
if (eregi("$tld_pattern", $top_level_domain) == 0) {
$valid_address = false;
}
}
}
}
else {
$valid_address = false;
}
}
}
else {
$valid_address = false;
}
}
else {
$valid_address = false;
}
if ($valid_address && ENTRY_EMAIL_ADDRESS_CHECK == 'true') {
if (!checkdnsrr($domain, "MX") && !checkdnsrr($domain, "A")) {
$valid_address = false;
}
}
return $valid_address;
}

?>

These are the errors I get:

Warning: failed to open stream: No such file or directory on line 46

Warning: Variable passed to each() is not an array or object on line 47

Warning: eregi() [function.eregi]: REG_EMPTY on line 58

Could someone please help me.

Thank you
No comments posted yet

Your Answer:

Login to answer
140 Like 5 Dislike
Previous forums Next forums
Other forums

Validation
Hello

I know this is a really vag question.

I need to have a input field on a form th

TCP Sending Unsigned Char...
Hi...

I want to send over tcp/ip some data, i have the data in hexadecimal, and when i tr

login from external site
Hi my new experience begins, Now what i am trying to do is i make three pages, login.php logout.php

Form a inline view based on the results of the previous query?
Hi Experts,
Can we form a inline view on the results of a previous query (another inline view)?

shoping cart issues
i´ve wrote this and works when i add an item to, my cart, but when i want to add othrer item just

How to read CSS message data
Hi,
I have a requirement here. When working as a Dev angel for multiple customers its really di

php and downloading
I want to use a php script to create two files. Then I want it to redirect (or whatever) to have tho

Else statement screws up all css
Does anyone know what goes wrong in the process with this php code?
This code seems to be causing

how do i display data on a page from mysql
1 - do i use this code at the top of each of my page i wish to only alow access if there as been a s

Navigation include for all site directories
Hi,

I need a navigation include that can deal with directories at different levels on a site.

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash