PHP Classes
elePHPant
Icontem

File: example.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of Arturs Sosins  >  Guitar Chord API class  >  example.php  >  Download  
File: example.php
Role: Example script
Content type: text/plain
Description: Example of class usage
Class: Guitar Chord API class
Search for guitar chords using Guitar Chord API
Author: By
Last change: credits changed
Date: 4 years ago
Size: 6,165 bytes
 

Contents

Class file image Download
<?php
/*************************************************************
 * This script is developed by Arturs Sosins aka ar2rsawseen, http://webcodingeasy.com
 * Fee free to distribute and modify code, but keep reference to its creator
 *
 * This class uses Guitar chord API http://pargitaru.co.cc/api/.
 * It can find chord variations based on given data about chord
 * You can specify chord name, chord modification, or/and string/fret combination
 *
 * For more information, examples and online documentation visit:
 * http://webcodingeasy.com/PHP-classes/Guitar-chord-API-class
**************************************************************/
//This is an example usage of Guitar Chord API class from http://pargitaru.co.cc/api/
//this example generates three forms
//First one for searching for standart chords based on chord name and/or modification
//Second one for searching for special chords based on chord name
//Third one is for searching standart and special chords by specifying string and fret

include("./chord.php");
$chord = new chords();

//*------using arrays to genereat standart chord form example-----*/
if(isset($_POST['from_select']))
{
   
//setting chord name, empty values will be ignored
   
$chord->set_chord($_POST['chord']);
   
//setting chord modification, empty values will be ignored
   
$chord->set_modification($_POST['modf']);
   
//requesting json data, json is a default data output format, so no need pass it as a parameter(here just for example)
    //to get xml data use $chord->request("xml");
   
$chord_data = json_decode($chord->request("json"), true);
   
//getting errors
   
$errors = $chord->get_errors();
   
//checking if there are any error
   
if(!empty($errors))
    {
        foreach(
$errors as $error)
        {
            echo
"<p>".$error."</p>";
        }
    }
    else
    {
        foreach(
$chord_data['chords'] as $ch)
        {
            echo
"<p>".$ch['chord'].$ch['modf'].": ";
            foreach(
$ch as $key => $val)
            {
                if(!
in_array($key, array("chord", "modf")))
                {
                    echo
$val." ";
                }
            }
            echo
"</p>";
        }
    }
}
echo
"<p>Search for chords and modifications:</p>";
echo
"<form action='' method='post'>";
$chord_arr = $chord->get_chords();
echo
"<select name='chord'>";
echo
"<option value=''>--</option>";
foreach(
$chord_arr as $val)
{
    echo
"<option value='".$val."'>".$val."</option>";
}
echo
"</select>";
$modf_arr = $chord->get_modifications();
echo
"<select name='modf'>";
echo
"<option value=''>--</option>";
foreach(
$modf_arr as $val)
{
    echo
"<option value='".$val."'>".$val."</option>";
}
echo
"</select>";
echo
"<input type='hidden' name='from_select' value='true'/>";
echo
"<input type='submit' value='Find'/>";
echo
"</form>";
/*-----------------------------------------------------------------------------*/

//*------using arrays to genereat special chord form example-----*/
if(isset($_POST['from_select_sp']))
{
   
//setting chord name, empty values will be ignored
    //true specifies that this is a special chord
   
$chord->set_chord($_POST['chord'], true);
   
//requesting json data, json is a default data output format
   
$chord_data = json_decode($chord->request(), true);
   
//getting errors
   
$errors = $chord->get_errors();
   
//checking if there are any error
   
if(!empty($errors))
    {
        foreach(
$errors as $error)
        {
            echo
"<p>".$error."</p>";
        }
    }
    else
    {
        foreach(
$chord_data['chords'] as $ch)
        {
            echo
"<p>".$ch['chord'].": ";
            foreach(
$ch as $key => $val)
            {
                if(!
in_array($key, array("chord", "modf")))
                {
                    echo
$val." ";
                }
            }
            echo
"</p>";
        }
    }
}
echo
"<p>Search for special chords:</p>";
echo
"<form action='' method='post'>";
$chord_arr = $chord->get_specials();
echo
"<select name='chord'>";
echo
"<option value=''>--</option>";
foreach(
$chord_arr as $val)
{
    echo
"<option value='".$val."'>".$val."</option>";
}
echo
"</select>";
echo
"<input type='hidden' name='from_select_sp' value='true'/>";
echo
"<input type='submit' value='Find'/>";
echo
"</form>";
/*-----------------------------------------------------------------------------*/

//*------Searching for chords by strings and frets-----*/
if(isset($_POST['by_string']))
{
   
//setting strings to search for standart chords
   
$chord->set_strings($_POST['strings']);
   
//requesting json data, json is a default data
   
$chord_data = json_decode($chord->request(), true);
   
//getting errors
   
$errors = $chord->get_errors();
   
//checking if there are any error
   
if(!empty($errors))
    {
        echo
"<p>Standart chord errors:</p>";
        foreach(
$errors as $error)
        {
            echo
"<p>".$error."</p>";
        }
    }
    else
    {
        echo
"<p>Standart chord results:</p>";
        foreach(
$chord_data['chords'] as $ch)
        {
            echo
"<p>".$ch['chord'].$ch['modf'].": ";
            foreach(
$ch as $key => $val)
            {
                if(!
in_array($key, array("chord", "modf")))
                {
                    echo
$val." ";
                }
            }
            echo
"</p>";
        }
    }
   
   
//reset all data to default values
   
$chord->reset();
   
   
//setting strings to search for special chords
   
$chord->set_strings($_POST['strings'], true);
   
//requesting json data, json is a default data
   
$chord_data = json_decode($chord->request(), true);
   
//getting errors
   
$errors = $chord->get_errors();
   
//checking if there are any error
   
if(!empty($errors))
    {
        echo
"<p>Special chord errors:</p>";
        foreach(
$errors as $error)
        {
            echo
"<p>".$error."</p>";
        }
    }
    else
    {
        echo
"<p>Special chord results:</p>";
        foreach(
$chord_data['chords'] as $ch)
        {
            echo
"<p>".$ch['chord'].": ";
            foreach(
$ch as $key => $val)
            {
                if(!
in_array($key, array("chord", "modf")))
                {
                    echo
$val." ";
                }
            }
            echo
"</p>";
        }
    }
}
echo
"<p>Search for chords by frets:</p>";
echo
"<form action='' method='post'>";
$arr = array("e", "b", "g", "D", "A", "E");
foreach(
$arr as $val)
{
    echo
"<p>".$val.": <input type='text' name='strings[]' size='2'/></p>";
}
echo
"<input type='hidden' name='by_string' value='true'/>";
echo
"<input type='submit' value='Find'/>";
echo
"</form>";
/*-----------------------------------------------------------------------------*/

   
?>