Jump to content

BrianCoyDesign

New Members
  • Posts

    9
  • Joined

  • Last visited

    Never

Profile Information

  • Gender
    Not Telling

BrianCoyDesign's Achievements

Newbie

Newbie (1/5)

0

Reputation

  1. Solved.... Ever have one of those walk away and then it will make sense moments? The problem was I was using " double quotes in the creation instead of single quotes. Here's the solution... $eval_string = '$result = array_intersect('; for($c=0; $c < count( $ship_methods_allowed ); $c++) { $eval_string .= '$ship_methods_allowed[' . $c . '], '; } //trim off last ", " $eval_string = substr($eval_string, 0, -2); $eval_string .= ');'; eval($eval_string);
  2. I've spent over 6 hours today on this it's driving me nuts. I don't understand what I'm not seeing here. I just want the final result to be: $result=array(result1,result2); After the intersection based on the total matched items between the arrays.
  3. Are you refering to these two lines? eval($eval_string); //eval("\$eval_string=\"$eval_string\";"); When I switch those I get no error but I also don't get an clean answer I receive this: HERE:- = array_intersect(Array, Array); For the line echo "HERE:" . $result . "-" . $eval_string . "<br>"; I get nothing for print_r ($result); I need an array of the results from the array_intersect.
  4. for($i=0;$i<count($searchShippersFinal);$i++){ $db = new ps_DB; $q = "SELECT DISTINCT custom_shipping_carrier FROM jos_vm_category WHERE category_id='". $searchShippersFinal[$i] ."'"; $db->query($q); $db->next_record(); $ship_methods_allowed[$i] = explode( "|", $db->f('custom_shipping_carrier')); for($j=0;$j<count($ship_methods_allowed[$i]);$j++){ if($ship_methods_allowed[$i][$j]!=""){ //echo $ship_methods_allowed[$i][$j] . "<br>"; } } echo "<br>"; } //Now that all the array have been created I need to take an put them all into one statement and compare ALL the ARRAYS at the same time to come up with final list. $ship_methods_allowed[1] = array("UPS","Shipping Based on Total Order","In Store Pickup"); //$ship_methods_allowed[2] = array("UPS","Shipping Based on Total Order","In Store Pickup"); //$result = array_intersect($newArray,$ship_methods_allowed[1],$ship_methods_allowed[2]); $eval_string = "$result = array_intersect("; for( $c = 0; $c < count( $ship_methods_allowed )+1; $c++ ) { $eval_string .= "$ship_methods_allowed[$c], "; } //trim off last ", " $eval_string = substr($eval_string, 0, -4); $eval_string .= ");"; eval($eval_string); //eval("\$eval_string=\"$eval_string\";"); //$result = $eval_string; echo "HERE:" . $result . "-" . $eval_string . "<br>";
  5. Parse error: syntax error, unexpected '=' in /home/myprinti/public_html/components/com_virtuemart/themes/default/templates/checkout/list_shipping_methods.tpl.php(96) : eval()'d code on line 1 PHP Version 5.2.9
  6. When I modified the code slightly $eval_string = "$result = array_intersect("; for( $c = 0; $c < count( $ship_methods_allowed )+1; $c++ ) { $eval_string .= "$ship_methods_allowed[$c], "; } //trim off last ", " $eval_string = substr($eval_string, 0, -4); $eval_string .= ");"; //eval($eval_string); eval("\$eval_string=\"$eval_string\";"); I get = array_intersect(Array, Array); as the result. If I leave the eval the way it was in your code same I get an error on the equal sign. I'm not sure why $result doesn't flow through to make the result show-up. suggestions?
  7. I'm getting Parse error: syntax error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING using the above code. My statement was off as I only had one array.
  8. $ship_methods_allowed contains an array of modules based on the id of the product. For example the first array $ship_methods_allowed[0]= array("UPS","Shipping Based on Total Order","In Store Pickup"); Second Array would contain $ship_methods_allowed[1]= array("UPS","Shipping Based on Total Order","Freight"); Third - $ship_methods_allowed[2]= array("UPS","Shipping Based on Total Order"); So by comparing these I want to get back $result = array("UPS","Shipping Based on Total Order"); I can then use the result to turn on those 2 modules so they show on the shipping page. var_dump($ship_methods_allowed) returns array(1) { [0]=> array(4) { [0]=> string(15) "In Store Pickup" [1]=> string(0) "" [2]=> string(3) "UPS" [3]=> string(0) "" } }
  9. Hello fellow freaks... I'm hoping someone can help me. I've created some code that takes an unknown number or arrays and creates a string (ugh) that can be placed into the array_intersect variable for comparison. $c=0; $newArray=''; foreach ($ship_methods_allowed as $module) { $newArray .= '$ship_methods_allowed['.$c.'] , '; $c++; } $newArray = rtrim($newArray,' , '); eval("\$newArray = $newArray;"); $result = array_intersect($newArray); If I put in more than one array I get the error that an unexpected , (comma) has been seen in the code. I need the comma there and I need each variable to be seen as an array to get the results. The $newArray variable comes out as a string "$ship_methods_allowed[0],$ship_methods_allowed[1]" How do I get the array_intersect to see there correctly? Any help would be appriciated. I've been banging my head against a wall for a week now.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.