Stap 6: De PHP-bestand maken
Onze "webcam.php" communiceert met de klant, dus we moeten iets om te communiceren met de server-side van ons project.
<?php require_once('codebird.php'); \Codebird\Codebird::setConsumerKey("YOUR CONSUMER KEY", "YOUR CONSUMER SECRET"); $cb = \Codebird\Codebird::getInstance(); $cb->setToken("YOUR ACCESS TOKEN", "YOUR ACCESS SECRET"); $img = $_POST['img']; $datetime = $_POST['date']; $img = str_replace('data:image/png;base64,', '', $img); $img = str_replace(' ', '', $img); $data = base64_decode($img); $file = $datetime.'temp.png'; $success = file_put_contents($file, $data); $media_files = array($file); $media_ids = array(); foreach($media_files as $file) { $reply = $cb->media_upload(array('media' => $file)); $media_ids[] = $reply->media_id_string; } $media_ids = implode(',', $media_ids); $reply = $cb->statuses_update(array( 'status' => 'I\'m sending a tweet with a picture!', 'media_ids' => $media_ids )); ?>
Dus wat is hier gaande? Als we het uitchecken stap voor stap, is het niet te moeilijk
- Ten eerste, we CodeBird vereisen, en zet onze consument en Access tokens, op die manier kunnen we communiceren met Twitter.
- Dan, we $img toewijzen aan de gegevens die worden verzonden door Ajax (dit zal zijn in webcam.php), en bewerk vervolgens het formatteren correct met php.
- Nadat de informatie is gecodeerd, we redden het naar onze server, hierdoor Twitter om het te uploaden.
- Volgende code dat ons toelaat om meerdere foto's tot Twitter uploaden is (maar voor dit project, sturen we slechts één). Het neemt de array en de informatie om te worden tweeted kunnen opgemaakt.
Als u veranderen wat de tweet zegt wilt, ga naar de 'status' en desgewenst wijzigen.
Bewaar dit als "pictweet.php" in de zelfde omslag die wij hebben gebruikt. Nu zijn we bijna klaar!