root/trunk/robots/path_test.bot.php

Revision 1, 1.8 KB (checked in by anonymous, 7 years ago)

initial import

Line 
1#!/usr/bin/php
2<?
3include ('../includes/includes.inc.php');
4
5$exlude=array();
6
7function apostrofize(&$array)
8{
9    foreach($array as $item)
10            $array = "'".$item."'";
11
12}
13
14function get_friends($id)
15{
16    global $db;
17    global $exclude;
18    $sql = 'SELECT id1, id2 FROM path WHERE id1=? OR id2=?';
19    print $sql;
20    $result = $db->query($sql, array($id,$id));
21    if(DB::isError($result))
22        $result->getUserInfo();
23    while($line = $result->fetchRow())
24    {
25        print $line['id1'].','.$line['id2']."\n";
26        if($line['id1'] == $id)
27            if(!in_array($line['id2'], $exclude))
28                $rval[] = $line['id2'];
29        else
30            if(!in_array($line['id1'], $exclude))
31                $rval[] = $line['id1'];
32    }
33
34    foreach($rval as $val)
35        $exclude[$val] = $val;
36
37    return $rval;
38}
39
40function test_link($ids1, $ids2)
41{
42    $common = array_intersect($ids1, $ids2);
43    if(count($common) == 0)
44    {
45                foreach($ids1 as $id1)
46                        $rval[] = get_friends($id1);
47                return $rval;
48        }
49    else
50        $common[0];
51}
52
53function test_link_r($ids1, $ids2)
54{
55        $common = array_intersect($ids1, $ids2);
56        if(count($common) == 0)
57    {
58        foreach($ids2 as $id2)
59            $rval[] = get_friends($id2);
60                return $rval;
61    }
62        else
63                $common[0];
64}
65
66
67function findpath($id1, $id2, $friends=null)
68{
69    global $exclude;
70    $exclude[] = $id1;
71    $exclude[] = $id2;
72
73    if(!is_array($id1))
74        $id1 = array($id1);
75    if(!is_array($id2))
76                $id2 = array($id2);
77
78    $rval1 = test_link($id1, $id2);
79    if(!is_array($rval1))
80        return 'find';   
81    else
82    {
83        $rval2 = test_link_r($id1, $id2);
84    }
85}
86
87$db =& DB::connect($dsn);
88if (DB::isError($db))
89                error_log($_SERVER['HTTP_HOST'].' | '.__FILE__.' | Connexion SQL impossible : '.$db->getMessage());
90
91$db->setFetchMode(DB_FETCHMODE_ASSOC);
92
93$path = array();
94
95print_r(get_friends(2));
96print_r($exclude);
97//print_r(findpath(4,11));
98
99$db->disconnect();
100?>
Note: See TracBrowser for help on using the browser.