#!/usr/bin/php-cgi <?php $result = mysql_query("select n.id AS nid, n.name, inet_ntoa(n.ipaddr) AS ipaddr, n.passwd, n.chkmac, m.mac, c.id AS cid FROM nodes n JOIN macs m ON (m.nodeid = n.id) JOIN customers c ON (c.id = n.ownerid)"); if ($row["mac"] == "00:00:00:00:00:00") { mysql_query("INSERT INTO radcheck VALUES (NULL, \"$row[name]$row[cid]\", \"Password\", \"==\", \"$row[passwd]\")"); mysql_query("INSERT INTO radcheck VALUES (NULL, \"$row[name]$row[cid]\", \"NAS-IP-Address\", \":=\", \"192.168.0.1\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-IP-Address\", \":=\", \"$row[ipaddr]\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Service-Type\", \":=\", \"Framed-User\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-Protocol\", \":=\", \"PPP\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-IP-Netmask\", \"=\", \"255.255.255.255\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-Routing\", \":=\", \"Broadcast-Listen\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-Compression\", \":=\", \"Van-Jacobsen-TCP-IP\")"); } elseif ($row["chkmac"] == "0") { mysql_query("INSERT INTO radcheck VALUES (NULL, \"$row[name]$row[cid]\", \"Password\", \"==\", \"$row[passwd]\")"); mysql_query("INSERT INTO radcheck VALUES (NULL, \"$row[name]$row[cid]\", \"NAS-IP-Address\", \":=\", \"192.168.0.1\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-IP-Address\", \":=\", \"$row[ipaddr]\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Service-Type\", \":=\", \"Framed-User\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-Protocol\", \":=\", \"PPP\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-IP-Netmask\", \"=\", \"255.255.255.255\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-Routing\", \":=\", \"Broadcast-Listen\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-Compression\", \":=\", \"Van-Jacobsen-TCP-IP\")"); } else { mysql_query("INSERT INTO radcheck VALUES (NULL, \"$row[name]$row[cid]\", \"calling-station-id\", \"==\", \"$row[mac]\")"); mysql_query("INSERT INTO radcheck VALUES (NULL, \"$row[name]$row[cid]\", \"Password\", \"==\", \"$row[passwd]\")"); mysql_query("INSERT INTO radcheck VALUES (NULL, \"$row[name]$row[cid]\", \"NAS-IP-Address\", \":=\", \"192.168.0.1\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-IP-Address\", \":=\", \"$row[ipaddr]\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Service-Type\", \":=\", \"Framed-User\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-Protocol\", \":=\", \"PPP\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-IP-Netmask\", \"=\", \"255.255.255.255\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-Routing\", \":=\", \"Broadcast-Listen\")"); mysql_query("INSERT INTO radreply VALUES (NULL, \"$row[name]$row[cid]\", \"Framed-Compression\", \":=\", \"Van-Jacobsen-TCP-IP\")"); } } ?>
Zapytanie zwraca mi taką wartosc:
1 KLIENT1 192.168.0.2 zrqRKZDtYSYFjDFF 1 00:00:00:00:00:00 1 2 KLIENT2 192.168.0.104 dino1988 1 00:00:00:00:00:00 2 6 KLIENT3 192.168.0.8 sEgClbb2CRX6N0p6 1 00:00:00:00:00:00 6 9 KLIENT4 192.168.0.70 9wXDK6u3BK6cgHOZ 1 00:00:00:00:00:00 9 11 KLIENT5 192.168.0.13 yE2jt527Gz7C572w 1 00:00:00:00:00:00 11 17 KLIENT6 192.168.0.19 OYsFBSpWybFWqyHh 1 00:00:00:00:00:00 17 20 KLIENT7 192.168.0.62 M3iR3tcBI5kXFws4 1 00:00:00:00:00:00 20 28 KLIENT8 192.168.0.30 4v1W5urDIRJIELie 1 00:00:00:00:00:00 28 31 KLIENT9 192.168.0.33 jSaz8lELBY8FuFud 1 00:00:00:00:00:00 31 33 KLIENT10 192.168.0.35 GEOlZdS4eucIYr2j 1 00:00:00:00:00:00 33 38 KLIENT11 192.168.0.40 garmonbozia123 1 00:00:00:00:00:00 38 39 KLIENT12 192.168.0.41 u0cBVaRK67VC6DOf 1 00:00:00:00:00:00 39 48 KLIENT13 192.168.0.157 arEAFljJ8puEDPl3 1 00:00:00:00:00:00 45 49 KLIENT14 192.168.0.137 dino1988 1 00:00:00:00:00:02 2 49 KLIENT14 192.168.0.137 dino1988 1 00:00:00:00:00:01 2
Jak widac skrypt wyciąga mi 2x klienta14 róznią się jedynie ostatnim rekordem
więc przy dodaniu do tabeli radcheck klienta14 wyglada to tak:
27 KLIENT14 Password == dino1988 28 KLIENT14 NAS-IP-Address := 192.168.0.1 29 KLIENT14 calling-station-id == 00:00:00:00:00:01 30 KLIENT14 Password == dino1988
Chciałbym dodac warunek if który sprawdzał by czy wynik w petli row np
$row[name] powtarza się to w tedy kiedy warunek zostanie spelniony ma dodac rekordy do bazy radcheck w nastepujacy sposob:
27 KLIENT14 Password == dino1988 28 KLIENT14 NAS-IP-Address := 192.168.0.1 29 KLIENT14 calling-station-id == 00:00:00:00:00:02 30 KLIENT14 calling-station-id == 00:00:00:00:00:01 31 KLIENT14 Password == dino1988
czyli dodac jeden raz wpis tylko z 2x rekordem calling-station-id z 1 i 2 mackiem
a nie jak to teraz jest w taki sposob
28 KAMIL2 calling-station-id == 00:00:00:00:00:02 29 KAMIL2 Password == dino1988 30 KAMIL2 NAS-IP-Address := 192.168.0.1 31 KAMIL2 calling-station-id == 00:00:00:00:00:01 32 KAMIL2 Password == dino1988 33 KAMIL2 NAS-IP-Address := 192.168.0.1
bardzo prosiłbym o wskazówki
pozdrawiam