Magic The Gathering Mysql表如何调用php脚本中的echo内的函数

时间:2012-03-26 15:22:34

标签: php mysql sql wordpress function

你如何把PHP放在PHP中?下面的脚本是我试图将PHP放在PHP脚本中的地方。函数boutique_product_name的底部附近。这行代码有两个独立的调用函数实例,但它必须嵌套在这个mysql表中。我省略了很多不需要显示的代码,因此更容易理解。但它最终将是一个从xml文件中提取的mysql表,用于魔术收集卡。其中包括定价数据和购买卡的能力,这就是底部功能的用途。

我仍然需要弄清楚如何为表格中的每张卡片制作实际的产品页面,但以后会这样做。

所以,如果有人知道如何在世界上放置一个

<?php
    $z = new xmlreader;
    $z->open('http://*****.com/wp-content/themes/*****/mtg/arb.xml'); // Your XML File name
    $doc = new DOMDocument;

    while ($z->read() && $z->name !== 'card');
    echo "<table border=1>
    <tr></tr>";

    while ($z->name === 'card')
    {
        $node = new SimpleXMLElement($z->readOuterXML());

        echo "<tr>

        <td><div class='id1'>".$node->id."</div></td>
        <td><div class='cardname1'>".$node->name."</div></td>
        <td><div class='set1'>".$node->set."</div></td>
        <td><div class='cardtype1'>".$node->type."</div></td>
        <td><div class='rarity1'>".$node->rarity."</div></td>
        <td><div class='manacost1'>".$node->manacost."</div></td>

        $id     =   $node->id;
        $name       =   $node->name;
        $set        =   $node->set;
        $type       =   $node->type;
        $rarity     =   $node->rarity;
        $manacost   =   $node->manacost;

        $sql = "INSERT INTO `*****_wrdp2`.`cards` 

        (`id`, `name`, `set`, `type`, `rarity`, `mana cost`) 
        VALUES 
        ('$id', '$name', '$set', '$type', '$rarity', '$manacost');";

        if(mysql_query($sql)) 
        {
            echo "<td><div class='error'><font color='green'><b>Success!</b></font></div></td></tr>";

            } else {

            echo "<td><div class='error'><font color='red'><b>Failure! (".mysql_error().")</b></font></div></td></tr>";
        }

        echo "<a href="#<?php echo boutique_product_name('offer'); ?>" class="add-to-cart et-shop-item"><?php esc_html_e('Add to cart','Boutique'); ?></a>";
        $z->next('card');
    }

    echo "</table>";
?>

1 个答案:

答案 0 :(得分:0)

从技术上讲,你正在寻找“eval”,但我认为这不是你想要的。你似乎每次都在向函数传递相同的参数。如果这样做得好,那么相同的输入应该产生相同的输出。

你不能打电话:

 $prodName = boutique_product_name('offer');

 while ($z->name === 'card')
{
    $node = new SimpleXMLElement($z->readOuterXML());

    echo "<tr>

    <td><div class='id1'>".$node->id."</div></td>
    <td><div class='cardname1'>".$node->name."</div></td>
    <td><div class='set1'>".$node->set."</div></td>
    <td><div class='cardtype1'>".$node->type."</div></td>
    <td><div class='rarity1'>".$node->rarity."</div></td>
    <td><div class='manacost1'>".$node->manacost."</div></td>";
    // notice that close quote!

    $id     =   $node->id;
    $name       =   $node->name;
    $set        =   $node->set;
    $type       =   $node->type;
    $rarity     =   $node->rarity;
    $manacost   =   $node->manacost;

    $sql = "INSERT INTO `*****_wrdp2`.`cards` 

    (`id`, `name`, `set`, `type`, `rarity`, `mana cost`) 
    VALUES 
    ('$id', '$name', '$set', '$type', '$rarity', '$manacost');";

    if(mysql_query($sql)) 
    {
        echo "<td><div class='error'><font color='green'><b>Success!</b></font></div></td></tr>";

        } else {

        echo "<td><div class='error'><font color='red'><b>Failure! (".mysql_error().")</b></font></div></td></tr>";
    }

    // note the escapes
    echo "<a href=\"#$prodName\" class=\"add-to-cart et-shop-item\"><?php esc_html_e('Add to cart','Boutique'); ?></a>";
    $z->next('card');
}

echo "</table>";