login  Naam:   Wachtwoord: 
Registreer je!
 Forum

array problemen

Offline merlin_nl - 19/05/2009 22:49 (laatste wijziging 19/05/2009 23:18)
Avatar van merlin_nlPHP interesse Hallo allen,

Ik moet voor een kennis een zeer oude windows mailserver converten naar een linux postfix server, echter staan zijn forwards in mysql.
Nu kan ik uiteraard dit uitlezen, echter staan er bij de forwards ook nog $user in.
b.v.
login: jantje@domein
forward: $user,jantje@domein2

Hoe haal ik die "$user," weg ? (en nee niet in elke output staat dit)

Het script hiervoor is :
  1. <?php
  2. $host="*****"; // Host name
  3. $username="*****"; // Mysql username
  4. $password="*****"; // Mysql password
  5. $db_name="*****"; // Database name
  6. $tbl_name="*****"; // Table name
  7.  
  8. // Connect to server and select database.
  9. mysql_connect("$host", "$username", "$password")or die("cannot connect");
  10. mysql_select_db("$db_name")or die("cannot select DB");
  11.  
  12. $domeinfile= fopen("/tmp/forwardsfromsql","w");
  13.  
  14. $listresult=mysql_query("SELECT login,forward FROM $tbl_name WHERE forward != ''");
  15. $countresult=mysql_num_rows($listresult);
  16.  
  17. if ($countresult < 1) {
  18. print("No domeinnaam found in the database.<br>");
  19. } else {
  20. while($rowdomain=mysql_fetch_array($listresult)) {
  21. $login=$rowdomain[login];
  22. $forward=$rowdomain[forward];
  23.  
  24. fputs($domeinfile, "$login $forward\n");
  25. }
  26. }
  27. fclose($domeinfile);
  28. ?>


Alvast bedankt 

-- edit --

momenteel heb ik :
  1. $domeinfile= fopen("/tmp/forwardsfromsql2","w");
  2.  
  3. $listresult=mysql_query("SELECT login,forward FROM $tbl_name WHERE forward != ''");
  4. $countresult=mysql_num_rows($listresult);
  5.  
  6. if ($countresult < 1) {
  7. print("No domeinnaam found in the database.<br>");
  8. } else {
  9. while($rowdomain=mysql_fetch_array($listresult)) {
  10. $login=$rowdomain[login];
  11. $forward=$rowdomain[forward];
  12.  
  13. $array = explode(",", $forward);
  14. //print_r($array);
  15.  
  16. $forward = '';
  17.  
  18. while (list($key, $val) = each($array)) {
  19. if($val == "\$user") {
  20. } else {
  21. $forward .= "".$val.",";
  22. }
  23. }
  24.  
  25.  
  26. fputs($domeinfile, "$login $forward\n");
  27. }
  28. }
  29. fclose($domeinfile);


echter op het einde zit ik nog met een ,
Die moet ik nog welslopen 

2 antwoorden

Gesponsorde links
Offline dododedodo - 19/05/2009 23:24 (laatste wijziging 19/05/2009 23:54)
Avatar van dododedodo Lid PHP.net: preg_replace of PHP.net: str_replace


  1. <?php
  2. $output1 = str_replace("$user,", "", $input);
  3. $output2 = preg_replace("#\$user,#i", "", $input);
  4. ?>
Offline Wim - 19/05/2009 23:49
Avatar van Wim Crew algemeen Je kan het laatste teken controleren dmv PHP.net: substr.

Maar even helemaal iets anders; postfix ondersteund toch ook MySQL? Kan je de database niet volledig kopieren?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.209s