2016-06-01 3 views
4

Ich verwende eine API-Curl-Methode, um JSON-Daten zu erhalten, und füge sie dann in eine HTML-formatierte Tabelle für meine Web-App ein.Wie kann ich mehrere Suchfelder mit einer einzigen Abfrage erstellen? [PHP/HTML]

Meine Bedürfnisse haben sich leicht geändert und ich muss jetzt in einer einzigen Suche nach mehreren Ticketnummern suchen. Hier ist, was ich habe zur Zeit ..

<form action="http://-withheld-/shop/ticket.php" method="GET"> 
    <input type="text" name="id" placeholder="Search by TicketID" required="required"><br> 

    <button type="submit">Search</button><br> 

habe ich versucht, mehr Felder hinzufügen, aber ohne Erfolg.

dh)

<input type="text" name="id1" placeholder="Search by TicketID" required="required"><br> 
<input type="text" name="id2" placeholder="Search by TicketID" required="required"><br> 
<input type="text" name="id3" placeholder="Search by TicketID" required="required"><br> 

Oh, und auch hier ist der PHP-Teil meines Codes, die eine einzige Ticket-ID auf Suche arbeitet zur Zeit bei der Beschaffung.

if(isset($_GET['id'])) { 
     $id = $_GET['id']; 
    } 

habe ich versucht, mehr Felder mit meinem obigen HTML-Code und dieser Code unten hinzufügen:

if(isset($_GET['id'])) { 
$id = $_GET['id1']; 
$id = $_GET['id2']; 
$id = $_GET['id3']; 

     } 

etc etc.

Wenn jemand mir dabei helfen könnte wäre ich sehr dankbar. Ich weiß, dass dies eine sehr grundlegende Frage ist, aber ich konnte keine Einzelheiten bezüglich der Abfrage mehrerer Suchvorgänge mit der $ _GET-Methode finden. Alles, was ich gefunden habe, war in Bezug auf eine MySQL-Abfrage.

Vielen Dank im Voraus für Ihre Zeit und Hilfe!

+0

Wenn Sie Ihre Felder ändern ID1 , id2, id3 und nur prüfen, ob 'id' gesetzt ist, werden Sie auf Probleme stoßen, wenn Sie nicht mehr ein ID-Feld haben. – Shane

Antwort

1

Die Form:

<form action="http://-withheld-/shop/ticket.php" method="GET"> 
<input type="text" name="id1" placeholder="Search by TicketID" required="required"><br> 
<input type="text" name="id2" placeholder="Search by TicketID" required="required"><br> 
<input type="text" name="id3" placeholder="Search by TicketID" required="required"><br> 

<button type="submit">Search</button><br> 

die Formulardaten sammeln und die JSON-Daten abfragen:

if(isset($_GET['id1'])) { 
$id1 = $_GET['id1']; 
$url1 = 'http://-withheld-/api/v1/tickets/'.$id1.'?api_key=0f8797897-ba73-40bb-9b74-366ef‌​03c2cbf'; 
// Initiate curl 
$ch1 = curl_init(); 
// Disable SSL verification 
curl_setopt($ch1, CURLOPT_SSL_VERIFYPEER, false); 
// Will return the response, if false it print the response 
curl_setopt($ch1, CURLOPT_RETURNTRANSFER, true); 
// Set the url 
curl_setopt($ch1, CURLOPT_URL,$url1); 
// Execute 
$result1=curl_exec($ch1); 
// Closing 
curl_close($ch1); 
// Will dump a beauty json :3 
$jsonObj1 = json_decode($result1); 
} 
if(isset($_GET['id2'])) { 
$id2 = $_GET['id2']; 
$url2 = 'http://-withheld-/api/v1/tickets/'.$id2.'?api_key=0f8797897-ba73-40bb-9b74-366ef‌​03c2cbf'; 
// Initiate curl 
$ch2 = curl_init(); 
// Disable SSL verification 
curl_setopt($ch2, CURLOPT_SSL_VERIFYPEER, false); 
// Will return the response, if false it print the response 
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, true); 
// Set the url 
curl_setopt($ch2, CURLOPT_URL,$url2); 
// Execute 
$result2=curl_exec($ch2); 
// Closing 
curl_close($ch2); 
// Will dump a beauty json :3 
$jsonObj2 = json_decode($result2); 
} 
} 
if(isset($_GET['id3'])) { 
$id3 = $_GET['id3']; 
$url3 = 'http://-withheld-/api/v1/tickets/'.$id3.'?api_key=0f8797897-ba73-40bb-9b74-366ef‌​03c2cbf'; 
// Initiate curl 
$ch3 = curl_init(); 
// Disable SSL verification 
curl_setopt($ch3, CURLOPT_SSL_VERIFYPEER, false); 
// Will return the response, if false it print the response 
curl_setopt($ch3, CURLOPT_RETURNTRANSFER, true); 
// Set the url 
curl_setopt($ch3, CURLOPT_URL,$url3); 
// Execute 
$result3=curl_exec($ch3); 
// Closing 
curl_close($ch3); 
// Will dump a beauty json :3 
$jsonObj3 = json_decode($result3); 
} 
} 

Dann werden die Ergebnisse dargestellt:

if(isset($jsonObj1)){ 
foreach ($jsonObj1->{'tickets'} as $ticket1) { 
echo '<tr>'; echo '<td>'.$ticket1->{'id'}.'</td>'; echo '<td>'.$ticket1->{'number'}.'</td>'; echo '<td>'.$ticket1->{'customer_business_then_name'}.'</td>'; echo '<td>'.$ticket1->{'subject'}.'</td>'; echo '<td>'.$ticket1->{'created_at'}.'</td>'; echo '<td>'.$ticket1->{'status'}.'</td>'; echo '<td>'.$ticket1->{'problem_type'}.'</td>'; echo '<td>'.$ticket1->{'updated_at'}.'</td>'; echo '<td><a href="'.$link_addr.'">View</a></td>'; echo '<html></tr></html>'; 
} 
} 

if(isset($jsonObj2)){ 
foreach ($jsonObj2->{'tickets'} as $ticket2) { 
echo '<tr>'; echo '<td>'.$ticket2->{'id'}.'</td>'; echo '<td>'.$ticket2->{'number'}.'</td>'; echo '<td>'.$ticket2->{'customer_business_then_name'}.'</td>'; echo '<td>'.$ticket2->{'subject'}.'</td>'; echo '<td>'.$ticket2->{'created_at'}.'</td>'; echo '<td>'.$ticket2->{'status'}.'</td>'; echo '<td>'.$ticket2->{'problem_type'}.'</td>'; echo '<td>'.$ticket2->{'updated_at'}.'</td>'; echo '<td><a href="'.$link_addr.'">View</a></td>'; echo '<html></tr></html>'; 
} 
} 

if(isset($jsonObj3)){ 
foreach ($jsonObj3->{'tickets'} as $ticket3) { 
echo '<tr>'; echo '<td>'.$ticket3->{'id'}.'</td>'; echo '<td>'.$ticket3->{'number'}.'</td>'; echo '<td>'.$ticket3->{'customer_business_then_name'}.'</td>'; echo '<td>'.$ticket3->{'subject'}.'</td>'; echo '<td>'.$ticket3->{'created_at'}.'</td>'; echo '<td>'.$ticket3->{'status'}.'</td>'; echo '<td>'.$ticket3->{'problem_type'}.'</td>'; echo '<td>'.$ticket3->{'updated_at'}.'</td>'; echo '<td><a href="'.$link_addr.'">View</a></td>'; echo '<html></tr></html>'; 
} 
} 
+0

Vielen Dank für Ihre schnelle Antwort! Ich habe diesen Code wie angegeben versucht: Leider gibt es eine leere Tabelle zurück. Ich verwende keine SQL-Datenbank, wie ich in meiner Frage oben angegeben. Ich verwende eine CURL von einer API. – DragonKyn

+0

Ok, ich habe einige Änderungen vorgenommen, dies sollte für Sie funktionieren –

+0

'$ url = 'http: //-withheld-/api/v1/tickets/'.$id.'?api_key = 0f8797897-ba73-40bb-9b74-366ef03c2cbf '; \t \t // Locke einleiten \t \t $ ch = curl_init(); \t \t // SSL-Verifizierung deaktivieren \t \t curl_setopt ($ ch, CURLOPT_SSL_VERIFYPEER, false); \t \t // Gibt die Antwort zurück, wenn false, wird die Antwort ausgegeben \t \t curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); \t \t // Setzen Sie die URL \t \t curl_setopt ($ ch, CURLOPT_URL, $ url); \t \t // Ausführen \t \t $ result = curl_exec ($ ch); \t \t // Schließen \t \t curl_close ($ ch); \t \t // Will dump eine Schönheit json: 3 \t \t $ jsonObj = json_decode ($ Ergebnis); \t? ? – DragonKyn

Verwandte Themen